diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 87babed79..1a5eec696 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -54,7 +54,6 @@ jobs: - name: bootstrap run: | - sed -i '' 's/-undefined suppress//g' configure.ac # TODO drop ./build_aux/bootstrap install - name: Build environment setup diff --git a/.gitpod.yml b/.gitpod.yml index 6cdf438c1..7a99534e2 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -3,49 +3,52 @@ image: gitpod/workspace-c tasks: -- name: setup coding environment on Ubuntu 20.04 +- name: setup coding environment on Ubuntu 22.04 before: | # note: sadly we need this to be done every time as only /workspace is kept, but linked # against those dependencies; and also we do want to recompile after adjustments # this can all be dropped as soon as we would use a prepared docker sudo apt update && sudo apt upgrade -y sudo apt install -y build-essential libgmp-dev libdb-dev libjson-c-dev ncurses-dev libxml2-dev \ - automake libtool flex bison help2man texinfo \ - lcov - # sudo apt install gettext texlive-base # for make dist (po/*, doc/gnucobol.pdf) + automake libtool flex bison help2man gettext texinfo \ + lcov \ + clangd bear + # sudo apt install texlive-base # for make dist (doc/gnucobol.pdf) gp sync-done system-prepare - name: building GnuCOBOL init: | - mkdir -p $GITPOD_REPO_ROOTS/_build - cd $GITPOD_REPO_ROOTS/_build + mkdir -p $GITPOD_REPO_ROOTS/build + cd $GITPOD_REPO_ROOTS/build gp sync-await system-prepare ../autogen.sh - ../configure --enable-cobc-internal-checks --enable-debug --enable-code-coverage - make --jobs=$(nproc) + ../configure --enable-cobc-internal-checks --enable-debug --enable-code-coverage \ + CC="gcc -std=c89" CPPFLAGS="-Werror=declaration-after-statement" + bear -- make --jobs=$(nproc) command: | - cd $GITPOD_REPO_ROOTS/_build + cd $GITPOD_REPO_ROOTS/build gp sync-done build-finish - name: running GnuCOBOL tests with coverage command: | gp sync-await build-finish - cd $GITPOD_REPO_ROOTS/_build + cd $GITPOD_REPO_ROOTS/build half_jobs=$(( $(nproc) / 2 )) nice make --jobs=${half_jobs} check-code-coverage TESTSUITEFLAGS="--jobs=${half_jobs}" - name: running NIST85 tests command: | gp sync-await build-finish - cd $GITPOD_REPO_ROOTS/_build + cd $GITPOD_REPO_ROOTS/build half_jobs=$(( $(nproc) / 2 )) nice make -C tests/cobol85 --jobs=${half_jobs} test -# disabled as the download takes too long +# disabled as running that is really only useful *after* +# several adjustments to the build system -> manually #- name: running GnuCOBOL distribution tests with testuite # command: | # gp sync-await build-finish -# cd $GITPOD_REPO_ROOTS/_build +# cd $GITPOD_REPO_ROOTS/build # half_jobs=$(( $(nproc) / 2 )) # nice make --jobs=${half_jobs} distcheck TESTSUITEFLAGS="--jobs=${half_jobs}" @@ -58,3 +61,4 @@ vscode: - tenninebt.vscode-koverage - meronz.manpages - webfreak.debug + - OCamlPro.SuperBOL diff --git a/ChangeLog b/ChangeLog index 39cf69e62..ab3abd8c0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,6 +3,39 @@ * configure.ac: replace AC_ARG_VAR by AC_SUBST where appropriate +2024-05-14 David Declerck + + * configure.ac: update flags for building dynamic libraries on macOS + (helps fixing testsuite issues on recent macOS versions) + +2023-04-25 Simon Sobisch + + * configure.ac: try to error on warnings during checks, cleanup of resulting + unexpected test failures + * configure.ac: drop deprecated-non-prototype warning in clang + * configure.ac: add LIBCOB_LIBS while checking for libraries + * configure.ac: added check for HAVE_ATTRIBUTE_CONSTRUCTOR + +2023-04-05 Simon Sobisch + + * configure.ac: pass --enable-debug to autoconf generated files as + COB_ENABLE_DEBUG, currently used for running extra test cycles in + the test suite + +2023-03-03 Simon Sobisch + + * configure.ac: allow specification of XML2_CONFIG (only used if + pkg-config module libxml-2.0 is not available) + * configure.ac: check all used headers of libxml-2.0, + warn user if not found + * improve multiple header header check via AC_CHECK_HEADERS according + to docs (cJSON, json-c and curses) + +2023-02-27 Simon Sobisch + + * configure.ac: fixed duplicate note about JSON_C_C_FLAGS, + changed messages as per autoconf docs + 2023-02-25 Ron Norman * configure.ac: Add check for sys/time.h diff --git a/NEWS b/NEWS index db6681d79..b81014786 100644 --- a/NEWS +++ b/NEWS @@ -76,6 +76,8 @@ NEWS - user visible changes -*- outline -*- where the old default GnuCOBOL data files could be unusable if copied between systems of different hardware architecture. +** use the "default" -shared flag to build dynamic libraries on macOS + so as to fix testuite issues with recent macOS versions ** dialect option to allow ref-mod with zero-length (active with -std=default), with runtime checks enabled; also set by directives @@ -306,12 +308,15 @@ Open Plans: affected programs (with OCCURS DEPENDING ON) or compile with additional -fno-odoslide to get the same results as with older GnuCOBOL versions -** the compile flag -fdefaultbyte was moved to a dialect configuration, +** the compile flag -fdefaultbyte (initializarion for data-items without + an explicit VALUE) was moved to a dialect configuration; while -fdefaultbyte still works as before it is now implied as binary - zero with -std=ibm/mvs/bs2000, space for -std=mf/acu/rm/realia, and + zero with -std=ibm/mvs/bs2000/realia, space for -std=mf/acu/rm, and no defined initialization for -std=cobol85/cobol2002/cobol2014/xopen, - it is unchanged for -std=default (initialize to PICTURE/USAGE) - for compatibility to previous behavior compile with -fdefaultbyte=init + it is unchanged for -std=default (initialize to PICTURE/USAGE); + for compatibility to previous behavior compile with -fdefaultbyte=init; + note that initialization for INDEXED BY items honors the defaultbyte + configuration now, too ** the dialect configuration option larger-redefines-ok was changed to a support option larger-redefines; if specified on the command-line @@ -414,6 +419,15 @@ Open Plans: ** several bugs in COPY REPLACING / REPLACING were fixed along with adding support for exensions related to REPLACING LEADING / TRAILING +** for PICTURE P several fixes were made, so results may vary compared with + previous versions; sources with *leading* P never worked correct before, + and *must* be recompiled after upgrading + +** since its addition to GnuCOBOL ROUNDING MODE PROHIBITED just prevented + rounding; its behaviour changed to match the specification by doing that, + raising EC-SIZE-TRUNCATION and changed: not adjust the target field if + rounding would be necessary to store the data + * Listing changes ** the timestamp in the header was changed from ANSI date format like @@ -514,6 +528,11 @@ Open Plans: that this has to take both mathematical and "C compiler portability" into account) +** variables containing PICTURE symbol P may lead to wrong results in rare + cases (especially screenio) - please send a bug report if you catch a case; + since GC 3.2 rc3 all arithmetic operations and MOVE are believed to be + correct + ** features that are known to not be portable to every environment yet (especially when using a different compiler than GCC) * function with variable-length RETURNING item diff --git a/THANKS b/THANKS index c58dd9737..c2cb34f00 100644 --- a/THANKS +++ b/THANKS @@ -1,83 +1,94 @@ -Previous and current project maintainers: +Past and present maintainers: Keisuke Nishida Roger While (1950-2015) Simon Sobisch -Additional main developers with huge code and design contributions: +Other core developers with major code and design contributions -Ron Norman including for, but not limited to: - - implementation and ongoing work on C-/D-/VBISAM handler - - implementation and ongoing work on ODBC/OCI handler +Ron Norman including but not limited to + - Implementation and ongoing work on the C-/D-/VBISAM handler + - Implementation and ongoing work on ODBC/OCI handler - SHARING and RETRY clause implementation - - development of Report Writer - - external EXTFH along with ADDRESS OF FH--FCD and FH--KEYDEF - - improved overal compatibility to Micro Focus COBOL - - various improvements to code generation including resolving + - Report Writer development + - Standard EXTFH together with ADDRESS OF FH--FCD and FH--KEYDEF + - Improved overal compatibility with Micro Focus COBOL + - Various improvements to code generation including resolving constant expressions at compile time - - runtime configuration - - C-API for inspect/update COBOL data fields - - dump on abort + - Runtime configuration + - C-API to inspect/update COBOL data fields + - Dump on abort + - Performance improvements - cobfile utility -Edward Hart including for, but not limited to: - - fine-grained configuration of runtime checks - - compiler configuration, especially reserved word handling +Edward Hart including but not limited to + - fine-grained configuration of run-time checks + - Compiler configuration, in particular reserved word handling - datetime intrinsic functions - - XML GNERATE and JSON GENERATE - - initial support for internal repository (function and program prototypes) - - syntax support for standard COBOL and existing implementor extensions - - bug fixing and improving the testsuite + - XML GENERATE and JSON GENERATE + - Initial support for internal repository (function and program prototypes) + - Syntax support for standard COBOL and existing implementor extensions + - Bug fixes and test suite enhancements -Further more explicit thanks to: +We are grateful for the work of the Translation Project, its translation teams +and their individual contributors, who provide translations of user messages +for non-English speakers. -Alain Lucari -Brian Tiffin -David Korn -Dave Pitts -Joe Robbins (-2017) -Keiichi Takahashi -Peg -Richard Smith -Thomas Biehler -William M. Klein -Yoshiki Kusumoto +Similar thanks go to all the packagers who allow users to install GnuCOBOL from +their distributions' package management systems. -We are thankful for the work of the Translation Project, their translation -teams and their one-time contributors, providing the translation of user -messages for non-English speakers. +Also to the many people that have helped with testing this software. +We hope that everyone will continue to provide feedback. This is invaluable +to the ongoing development process. -Also to the many people that have helped out in testing this software. -We hope that everybody will continue to provide feedback. This is invaluable -to the continuing development process. - -A special mention here of people who have provided exceptional support in terms -of time and resources on hardware that was not available to the developers: -Oleg Philon - For his work on the PowerPC -David Wilson - For his work on the MAC (Darwin) +A special mention here goes to people who have given exceptional support in +terms of time and resources on hardware that was not available to the +developers: +Oleg Philon - For his work on the PowerPC +David Wilson - For his work on the MAC (Darwin) Sergey Kashyrin - For his work on: - SUN Solaris - IBM AIX - HP-UX And continuing this amazing support: +Arnold Trembley - Win32 packaging and user support +Chuck Haatvedt - Work on optimized BCD handling Ludwin Janvier - patches for build/packaging issues Hans-Martin Rasch - Work on compiler syntax Michel Gouget - Work on syntax - IS Bill Klein - The mainstay for COBOL questions Frank Swarbrick - Work on compiler syntax -Warren Gay - For testing systems that we didn't known that we even support! - (eg. old DEC Alpha systems) +Warren Gay - For testing systems we didn't even know we supported! + (e.g. old DEC Alpha systems) Fabrizio Calabretta - Work on the internal EXTFH interface +Gary L. Cutler and Vincent B. Coen for +writing and maintaining the GnuCOBOL Programmer's Guide. + OCamlPro SAS for assigning David Declerck, Nicolas Berthier and Fabrice Le Fessant to work for adding GCOS (Bull) support and contributing the result. -Denis Hugonnard-Roche for ongoing additions to the internal testsuite to -improve code-coverage. +Denis Hugonnard-Roche for continuous additions to the internal test suite to +improve code coverage. + + +Further explicit thanks to + +Alain Lucari +Brian Tiffin +David Korn +Dave Pitts +Joe Robbins (-2017) +Keiichi Takahashi +Peg +Richard Smith +Thomas Biehler +William M. Klein +Yoshiki Kusumoto ------------------------------------------------------------------------------- @@ -93,7 +104,7 @@ OpenCOBOL was inspired by the TinyCOBOL project. Thanks to the TinyCOBOL authors and maintainers. -Additional from TinCOBOL: +Additional from TinyCOBOL: Rildo Pragana (1958-2020) diff --git a/TODO b/TODO index ef57dd447..525950225 100644 --- a/TODO +++ b/TODO @@ -212,6 +212,8 @@ https://sourceforge.net/p/gnucobol/code/HEAD/tree/external-doc/guide/ - Rework the context-sensitive reserved words handling (or use a bigger type) +- Add --error-list -e to cobc + 7.2 CHECKMEs, TODOs and #if-0'ed code - Investigate the two CHECKMEs about bdb_close_cursor in fbdb.c:ix_bdb_write_internal @@ -230,6 +232,8 @@ https://sourceforge.net/p/gnucobol/code/HEAD/tree/external-doc/guide/ - Make field type an enum instead of a short in common.h:cob_field_attr as per TODO +- Add back the #if-0'ed code in codegen.c:output_perform_until and typeck.c: cb_emit_check_index; as this is not ISO-compliant it should have a dedicated option; also ensure it works well with the new dialect config introduced in 5087 + - Check the #if-0'ed code in field.c:validate_field_value - Check the #if-0'ed code for setting last_exception_source in common.c:cob_set_exception @@ -243,3 +247,5 @@ https://sourceforge.net/p/gnucobol/code/HEAD/tree/external-doc/guide/ - Check if should use strcpy or memcpy with computed max-length for file_open_name in fileio.c:cob_open - Check what we should do about the casts used to remove const on open_mode in fileio.c and others (eg. in cob_file_open) + +- Investigate failed manual tests "CRT STATUS clause" and "X/Open CRT STATUS clause" (see r4180) diff --git a/build_windows/ChangeLog.txt b/build_windows/ChangeLog.txt index 81f5388d7..371eb2303 100644 --- a/build_windows/ChangeLog.txt +++ b/build_windows/ChangeLog.txt @@ -13,6 +13,10 @@ * makedist.cmd: first addition for CI output * version_cobc.rc, version_libcob.rc: updated date + rev +2023-01-16 Simon Sobisch + + * version_cobc.rc, version_libcob.rc: updated date + rev + 2022-12-17 Simon Sobisch * general for libcob+cobc: handle move of cconv module @@ -43,7 +47,7 @@ 2021-11-06 Simon Sobisch - * config.h.in: moved references to PACKACAGE_defines after the define, + * config.h.in: moved references to PACKAGE_defines after the define, fixing dist builds since 2020-10-27 * makedist.cmd: explicit search for "define PACKAGE_define" which fixes the multiple results @@ -346,7 +350,7 @@ version_libcob.rc, version_cobcrun.rc provided by Simon) -Copyright 2014-2021 Free Software Foundation, Inc. +Copyright 2014-2023 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted provided the copyright notice and this notice are preserved. diff --git a/build_windows/config.h.in b/build_windows/config.h.in index 827d1c549..603034e60 100644 --- a/build_windows/config.h.in +++ b/build_windows/config.h.in @@ -400,6 +400,13 @@ /* #undef HAVE_ATTRIBUTE_ALIGNED */ #endif +/* Has __attribute__((constructor)) */ +#if defined(__ORANGEC__) +#define HAVE_ATTRIBUTE_CONSTRUCTOR 1 +#else +/* #undef HAVE_ATTRIBUTE_CONSTRUCTOR - using DllMain */ +#endif + /* Define to 1 if you have the `canonicalize_file_name' function. */ #if defined(__ORANGEC__) #define HAVE_CANONICALIZE_FILE_NAME 1 diff --git a/cobc/ChangeLog b/cobc/ChangeLog index f7880ead5..4bd1ef3fa 100644 --- a/cobc/ChangeLog +++ b/cobc/ChangeLog @@ -1,4 +1,18 @@ +2024-11-06 David Declerck + + Reverted change 2022-02-20 to integrate change + from GnuCOBOL 3.1 2023-04-04 + +2024-10-23 David Declerck + + * codegen.c (output_perform_until): improve PERFORM bounds + checking (disabled for now) + * typeck.c (cb_emit_set_to): remove check for integer + literal (now done in parser) + * parser.y (set_to, x_numeric_or_pointer): check that the + argument to SET TO is an index, a pointer, or an integer + 2024-08-28 David Declerck * tree.c (char_to_precedence_idx, get_char_type_description, valid_char_order): @@ -36,6 +50,167 @@ * typeck.c (cb_emit_sort_init): generate call to cob_file_sort_options * help.c (cobc_print_usage_dialect): extended -fregister help +2023-05-11 Simon Sobisch + + * cobc.c (cobc_check_valid_name): allow leading underscore, + prevent leading hyphen + * scanner.l (error_literal): change parameter literal_error to unsigned + and raise only a warning for negative values, adjust callers + * scanner.l (scan_x): internally handle odd numbers of x'' literals, + raise only a warning if the size is 1 and relaxed-syntax is active + * parser.y (data_description): improve error handling in DATA DIVISION + to raise less errors and create "validated invalid" fields + +2023-05-10 Simon Sobisch + + * field.c (cb_build_field_tree), parser.y: copy SCREEN SECTION + attributes from parent - instead of doing it in the parser + * parser.y (validate_screen_attributes): extracted duplicate code + * typeck.c (emit_field_accept_display): new function extracted + from (cb_emit_accept), handling both DISPLAY and ACCEPT + * typeck.c (cob_field_display): dropped, replaced in the callers + by call to (emit_field_accept_display) for not generating a call to + fixed-attribute "cob_field_display" but to the varargs + function "cob_display_field" + * codegen.c (output_screen_init), codeoptim.c (COB_SET_SCREEN): + generate screen init not as separate function "cob_set_screen" but + as macro "COB_SET_SCREEN" (there's no need or use to put all + attributes on the stack) + +2023-05-09 Simon Sobisch + + * codegen.c (output_funcall): backup and restore adjusted static fields, + minor refactoring + * codegen.c (output_funcall_item): extracted from (output_funcall) + * typeck.c (cb_emit_accept): dropped cb_gen_field_accept and don't generate + call to fixed-attribute "cob_field_accept", instead generate a call to + the varargs function "cob_accept_field" with passing only the attributes + that are set (including the new CONTROL, COLOR and CURSOR) + +2023-05-08 Simon Sobisch + + * tree.c (cb_build_funcall), tree.h (struct cb_funcall): defined + max. parameters for internal function calls as CB_BUILD_FUNCALL_MAX + and increased it to 14 + + FR #189 + FR #355 - runtime-adjustable attributes for extended screenio + * tree.h (cb_field): new attributes screen_control and screen_color + * tree.h (cb_attr_struct): new attributes control, color and cursor + * parser.y, typeck.c (validate_attrs, cb_emit_accept, cb_emit_display, + emit_field_display_for_last): add complete parsing for CONTROL, + COLOR and CURSOR and set/read new attributes as appropriate + * parser.y: pass COB_SCREEN_CONV to runtime (currently not handled) + +2023-05-05 Simon Sobisch + + * field.c (cb_resolve_redefines): fix #881 wrong REDEFINES error on + fields with redefinition + +2023-05-04 Simon Sobisch + + * typeck.c (cb_build_move_literal): restore writing of negative zero + (DISPLAY overpunched), that was removed undocumented with 2.0 + * typeck.c (cb_build_move_literal): optimized output for literals to + fields with BLANK WHEN ZERO and SIGN LEADING + +2023-04-25 Simon Sobisch + + * codegen.c (output_so_load_version_check): new function to generate + libcob version check in shared object constructor / DllMain, allowing + better error messages if the generated COBOL functions cannot be loaded + into memory because of newer ABI + +2023-04-18 Simon Sobisch + + * typeck.c (cb_build_move_field): emit call to cob_move_bcd for two + BCD fields without negative scale + +2023-04-17 Simon Sobisch + + * scanner.l: dropped last_token_is_dot and integer_is_label by checking + last_token instead + * scanner.l, parser.y, reserved.c, tree.h: dropped cobc_force_literal by + introducing second_last_token and checking the tokens instead + * scanner.l: early consume spaces after comma and semicolon + * scanner.l: simplify check for redundant periods by splitting its rule + * cobc.c (file_basename): directly use filename, + only handle backslash on win32 + * codegen.c: minor refactoring to drop global string_buffer + * codegen.c: generate COB_EXT_IMPORT and COB_EXT_EXPORT instead of extern + * codegen.c (codegen): minor refactoring + * parser.y (setup_registers): extracted + * parser.y: minor refactoring + +2023-04-14 Simon Sobisch + + * pplex.l (ppopen_get_file): extracted from ppopen and minor refactor + * pplex.l (ppecho): disabled performance-dropping fflush until found + necessary + +2023-04-11 Simon Sobisch + + * typeck.c (cb_build_cond, cb_emit_divide, cb_build_move_literal): + minor refactoring + +2023-04-04 Simon Sobisch + + * tree.c (cb_build_picture): don't include leading Ps in digit count + * typeck.c (validate_move): adjust checks for move from literal, fixing + PPP edge cases; rewrote calculation for most and least significant places + +2023-03-29 Simon Sobisch + + * typeck.c (count_pic_edited): renamed from count_pic_alphanumeric_edited + and adjusted for general use + * typeck.c (validate_move): handle national target and source, including + national literals + * typeck.c (validate_move): don't permit alphanumeric literals in VALUE + clause for numeric items + * field.c (cleanup_field_value): cleanup for national space + * scanner.l (scan_x): build "implied for empty" N / NX literal with + correct size + * scanner.l, tree.c (cb_concat_literals): output explanations of literal + errors as "note" instead of "error" + * tree.c: minor refactoring + +2023-03-28 Simon Sobisch + + * codegen.c (output_search_all): dropped unnecessary check + * codegen.c (output_search): add missing ODO runtime check + * codegen.c (output_search_whens): generate access to ODO value only once, + instead of on every internal SEARCH VARYING + * codegen.c (output_param): reduce scope of variables + +2023-03-24 Simon Sobisch + + * cobc.c: minor speedup in freeing memory + * reserved.c (get_user_specified_reserved_word): minor refactoring + +2023-03-23 Simon Sobisch + + * typeck.c (cb_build_move_field): generate optimized code for + reference-modification with same ref-mod length + +2023-03-08 Emilien Lemaire + + * reserved.c (get_user_specified_reserved_word): add check for + context sensitivity in aliases + +2023-03-03 Simon Sobisch + + * typeck.c (cb_build_cond_fields): optimize comparison between field and + ZEROES up to COB_ZEROES_ALPHABETIC_BYTE_LENGTH + * pplex.l (ppopen): fixes for auto-detection of reference-format FR #45 + handling tabs, dos eol and empty lines correctly + +2023-02-28 Simon Sobisch + + * typeck.c (cb_emit_set_to): generate runtime check for SET source + at most one time + * cobc.c (process_filename) [_WIN32 __GNUC__]: pass .dll input files + to linker (GCC MinGW extension to drop need of link libraries) + * cobc.c (xref_files_and_their_records, xref_labels): minor refactoring + 2023-02-26 Ron Norman * field.c: Emit warning if COMP-X has PIC S9 as COMP-X is always unsigned @@ -112,6 +287,26 @@ * pplex.l (ppcopy_find_file, ppcopy): replace slash to match system and always place name in buffer to allow this +2023-02-07 Simon Sobisch + + * typeck.c (cb_build_optim_cond): generate cob_bcd_cmp call for COMP-3/COMP-6 + * typeck.c (cb_build_optim_cond). codeoptim.def, codeoptim.c, codegen.c: + disabled "local" functions for COB_CMP_PACKED_INT, COB_GET_PACKED_INT, + COB_GET_PACKED_INT64 as the updated libcob variants are not slower, so + generate calls to these instead + +2023-02-03 Simon Sobisch + + * typeck.c (cb_build_optim_add), codeoptim.def, codeoptim.c, codegen.c: + added COB_GET_PACKED_INT64, COB_ADD_PACKED_INT64 for fast-resolving/ + adding PACKED-DECIMAL fields with 9-18 digits + * typeck.c (cb_build_optim_sub), codegen.c, tree.h + (CB_CAST_NEGATIVE_INTEGER, CB_CAST_NEGATIVE_LONG_INT): wrap subtractions + on PACKED-DECIMAL fields in a negative value used with optimized + packed_add + * typeck.c (cb_check_num_cond, cb_build_optim_cond): generate memcmp for + COMP-6 fields with same scale + 2023-02-01 Simon Sobisch * parser.y (rep_name_list): fixed error handling loop @@ -136,6 +331,7 @@ 2023-01-28 Fabrice Le Fessant + FR #45: auto-detection of reference-format * cobc.c (main): initialize cb_config_text_column to 72 to avoid a race condition in config files. * pplex.l (ppopen): try to autodetect the format of a file after @@ -158,6 +354,10 @@ * cobc.c, flag.def, cobc.h: handle external table for "ebcdic-table" * codegen.c: generate code using the external table +2023-01-20 Ron Norman + + * codeoptim.c: fix cob_check_subscript_inline for min subscript value + 2023-01-20 Simon Sobisch fixed bug #704: ANY LENGTH cannot have ref-mod, POS not context-sensitive @@ -197,6 +397,26 @@ * reserved.c (SEQUENCE): setting CB_CS_ALPHABET to allow code-name parsing * parser.y, reserved.c: changed reference from 202x to 2023 +2023-01-16 Simon Sobisch + + * parser.y (occurs_index): only set VALUE 1 for defaultbyte == INIT + * tree.h (CB_DEFAULT_BYTE_INIT, CB_DEFAULT_BYTE_NONE), config.c, field.c, + codegen.c: explicit defines instead of "only magic numbers" + * tree.c (cb_build_initialize), tree.h (struct cb_initialize), codegen.c + (output_initialize_to_value): replaced flag_init_statement with statement + * parser.y (setup_occurs_min_max): validate occurs_max limit + * codegen.c (output_initialize_uniform): pass code-field instead of + re-evaluating it + * codegen.c (output_initialize_multi_values): removed variable + "total_occurs" fixing Wunused-but-set-variable + * codegen.c (output_stmt): dropped unused msgid + * typeck.c (cb_build_index): add internal index variables in LINKAGE to + internal WORKING-STORAGE or internal LOCAL-STORAGE items depending on + program->flag_recursive + * codegen.c (output_init_comment_and_source_ref): new function, called + by one-time init code to add source reference to initial setup, bringing + in missing copybook references into GDB source list + 2023-01-15 Ron Norman * cobc.c: Make sure the 'schema' directory is created for -fsql @@ -231,12 +451,35 @@ * cobc.c (process_command_line): handle multiple -MT options like GCC * ChangeLog: integrated cobpp ChangeLog entries and added some historic changes from VCS log/diff + fixing bug #794: + * typeck (cb_build_index): attach the index to storage of qualifier, + if specified + * parser.y (_local_storage_section _linkage_section _screen_section): add + fields to appropriate instead of setting it, to not overwrite internal + additions as in cb_build_index + * parser.y (occurs_index): use CB_INT_INDEX for LOCAL-STORAGE indexes 2022-12-29 Simon Sobisch * codegen.c (output_standard_includes): don't include stdio.h in generated programs +2022-12-24 Simon Sobisch + + * tree.c (compare_field_literal): suppress some optimizations if constant + folding is disabled + * tree.h (cb_binary_op_op): added all binary operators + * typeck.c (explain_operator), tree.c (cb_build_binary_op), tree.h: + switched argument to cb_binary_op_op + * typeck.c (expr_reduce): refactored, also moved token swapping from + cb_expr_shift here + * typeck.c (swap_condition_operands): toogle BOP_OPERANDS_SWAPPED flag + * tree.c (compare_field_literal): don't warn if the >= / <= is the result + of an internal swap + * tree.c, tree.h, typeck.c (cb_build_cond, expr_reduce): set and handle + cb_binary_op_flag to pass this without changing hundreds of code lines + * parser.y: preparation of internal WINAPI call-convention name + 2022-12-21 Samuel Belondrade * codegen.c (output_base): fix undeclared variable with REDEFINE GLOBAL @@ -255,6 +498,16 @@ and the related BYTE-LENGTH clause * field.c, tree.c, typeck.c: minimal adjustments for PIC U +2022-12-16 Simon Sobisch + + * tree.h (cb_binary_op, cb_binary_op_flag, cb_binary_op_op): changed struct + cb_binary_op to use new enums for the operation and for "special flags" + * tree.h (BOP_OPERANDS_SWAPPED), codegen.c (output_cond), typeck.c + (cb_build_cond, swap_condition_operands): store flag when swap operation + is done and swap the result for return values as used in SEARCH ALL later + * codegen.c (output_long_integer): reduce scope of variables as done + in (output_integer) + 2022-12-15 Simon Sobisch * codegen.c (output_initialize_to_value): fix bad generation for VALUE size @@ -268,6 +521,20 @@ search tree * parser.y (_end_search): if search has no AT END create an implicit one at END-SEARCH for better trace and debugging + * flag.def, typeck.c: new option "fast-compare" (cb_flag_fast_compare, + defaulting to on) to disable old and new optimizations + * cobc.c: disable cb_flag_fast_compare for -fsyntax-only and on compiler + errors to improve parsing time + * tree.c (cb_fits_int, cb_fits_long_long): constant ZERO fits both + integer types + * tree.c (cb_field_size): return FIELD_SIZE_UNKNOWN for constants and + fields with ANY LENGTH + * typeck.c (cb_build_cond_default, cb_build_cond_fields): extracted + from cb_build_cond + * typeck.c (swap_condition_operands): added and executed in cb_build_cond + if left side is constant or literal + * typeck.c (cb_build_cond_fields): optimize comparison between field and + SPACES up to COB_SPACES_ALPHABETIC_BYTE_LENGTH 2022-12-14 Simon Sobisch @@ -1131,6 +1398,7 @@ 2022-01-25 Nicolas Berthier + FR #137: relax syntax for partial replace * pplex.l, ppparse.y, config.h: support COPY and REPLACE statements with partial REPLACING operands specified using literals @@ -4539,7 +4807,7 @@ 2017-10-18 Ron Norman - * codegen.c (output_internal_function): Fixed problem with braces in + * codegen.c (output_internal_function): fixed problem with braces in variable dump code 2017-10-17 Ron Norman @@ -10036,8 +10304,34 @@ place dependency list (copybooks) into dependency file for make * cobc.c: cleanup for passing arguments to cobpp +2001-12-29 Keisuke Nishida + + * pplex.l <- cobpp/scanner.l: handle line continuation (only in fixed format) + * cobc.c, cobpp.c, cobpp.h, pplex.l <- cobpp/scanner.l, scanner.h, + ppparse.y <- cobpp/parser.y: implement -I for copybook lookup + +2001-12-14 Keisuke Nishida + + * pplex.l <- cobpp/scanner.l, ppparse.y <- cobpp/parser.y: work on + COPY REPLACING + +2001-12-06 Keisuke Nishida + + * cobpp.c, cobpp.h, pplex.l <- cobpp/scanner.l, cobc.c: added tab-expansion + to rewritten cobpp + +2001-11-29 Keisuke Nishida + + * pplex.l <- cobpp/scanner.l: activate debugging code (D in col 7) + +2001-11-27 Keisuke Nishida + + * cobpp.c, cobpp.h, pplex.l <- cobpp/scanner.l, scanner.h (new file), + ppparse.y <- cobpp/parser.y, cobc.c: re-implement cobpp, + dropping some options for now + -Copyright 2002-2023 Free Software Foundation, Inc. +Copyright 2001-2023 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted provided the copyright notice and this notice are preserved. diff --git a/cobc/cobc.c b/cobc/cobc.c index 6d93bf3a1..0a54396be 100644 --- a/cobc/cobc.c +++ b/cobc/cobc.c @@ -477,7 +477,7 @@ static const struct option long_options[] = { {"std", CB_RQ_ARG, NULL, '$'}, {"conf", CB_RQ_ARG, NULL, '&'}, {"debug", CB_NO_ARG, NULL, 'd'}, - {"ext", CB_RQ_ARG, NULL, 'e'}, + {"ext", CB_RQ_ARG, NULL, '.'}, {"free", CB_NO_ARG, NULL, 'F'}, /* note: not assigned directly as this is only valid for */ {"fixed", CB_NO_ARG, NULL, 'f'}, /* `int` and sizeof(enum) isn't always sizeof (int) */ {"static", CB_NO_ARG, &cb_flag_static_call, 1}, @@ -989,9 +989,9 @@ cobc_main_stradd_dup (const char *str1, const char *str2) void * cobc_main_realloc (void *prevptr, const size_t size) { + register struct cobc_mem_struct *curr; + register struct cobc_mem_struct *prev; struct cobc_mem_struct *m; - struct cobc_mem_struct *curr; - struct cobc_mem_struct *prev; m = calloc ((size_t)1, COBC_MEM_SIZE + size); /* LCOV_EXCL_START */ @@ -1033,8 +1033,8 @@ cobc_main_realloc (void *prevptr, const size_t size) void cobc_main_free (void *prevptr) { - struct cobc_mem_struct *curr; - struct cobc_mem_struct *prev; + register struct cobc_mem_struct *curr; + register struct cobc_mem_struct *prev; prev = NULL; for (curr = cobc_mainmem_base; curr; curr = curr->next) { @@ -1105,9 +1105,9 @@ cobc_parse_strdup (const char *dupstr) void * cobc_parse_realloc (void *prevptr, const size_t size) { + register struct cobc_mem_struct *curr; + register struct cobc_mem_struct *prev; struct cobc_mem_struct *m; - struct cobc_mem_struct *curr; - struct cobc_mem_struct *prev; m = calloc ((size_t)1, COBC_MEM_SIZE + size); /* LCOV_EXCL_START */ @@ -1149,8 +1149,8 @@ cobc_parse_realloc (void *prevptr, const size_t size) void cobc_parse_free (void *prevptr) { - struct cobc_mem_struct *curr; - struct cobc_mem_struct *prev; + register struct cobc_mem_struct *curr; + register struct cobc_mem_struct *prev; prev = NULL; for (curr = cobc_parsemem_base; curr; curr = curr->next) { @@ -1407,7 +1407,7 @@ cobc_bcompare (const void *p1, const void *p2) enum name_error_reason { INVALID_LENGTH = 1, EMPTY_NAME, - SPACE_UNDERSCORE_FIRST_CHAR, + SPACE_HYPHEN_FIRST_CHAR, GNUCOBOL_PREFIX, C_KEYWORD, CONTAINS_DIRECTORY_SEPARATOR @@ -1427,8 +1427,8 @@ cobc_error_name (const char *name, const enum cobc_name_type type, case EMPTY_NAME: s = _(" - name cannot be empty"); break; - case SPACE_UNDERSCORE_FIRST_CHAR: - s = _(" - name cannot begin with space or underscore"); + case SPACE_HYPHEN_FIRST_CHAR: + s = _(" - name cannot begin with space or hyphen"); break; case GNUCOBOL_PREFIX: s = _(" - name cannot begin with 'cob_' or 'COB_'"); @@ -1498,8 +1498,8 @@ cobc_check_valid_name (const char *name, const enum cobc_name_type prechk) /* missing check (here): encoded length > internal buffer, see cob_encode_program_id */ - if (*name == '_' || *name == ' ') { - cobc_error_name (name, prechk, SPACE_UNDERSCORE_FIRST_CHAR); + if (*name == '-' || *name == ' ') { + cobc_error_name (name, prechk, SPACE_HYPHEN_FIRST_CHAR); return 1; } @@ -2119,14 +2119,15 @@ set_compile_date (void) { static int sde_todo = 0; if (sde_todo == 0) { - char *s = getenv ("SOURCE_DATE_EPOCH"); + unsigned char *s = (unsigned char *) getenv ("SOURCE_DATE_EPOCH"); sde_todo = 1; if (s && *s) { if (cob_set_date_from_epoch (¤t_compile_time, s) == 0) { set_compile_date_tm (); return; } - cobc_err_msg (_("environment variable '%s' has invalid content"), "SOURCE_DATE_EPOCH"); + cobc_err_msg (_("environment variable '%s' has invalid content"), + "SOURCE_DATE_EPOCH"); if (!cb_flag_syntax_only) { cb_source_file = NULL; cobc_abort_terminate (0); @@ -2761,7 +2762,6 @@ file_stripext (char *buff) static char * file_basename (const char *filename, const char *strip_ext) { - const char *p; const char *startp; const char *endp; size_t len; @@ -2775,19 +2775,23 @@ file_basename (const char *filename, const char *strip_ext) /* LCOV_EXCL_STOP */ /* Remove directory name */ - startp = NULL; - for (p = filename; *p; p++) { - if (*p == '/' || *p == '\\') { - startp = p; + startp = strrchr (filename, '/'); +#if defined(_WIN32) || defined(__CYGWIN__) + { + const char *slash = strrchr (filename, '\\'); + if (slash + && (!startp || startp < slash)) { + startp = slash; } } +#endif if (startp) { startp++; } else { startp = filename; } - /* Remove extension */ + /* Remove extension (= after last '.') */ if (!strip_ext || strcmp (strip_ext, COB_BASENAME_KEEP_EXT)) { endp = strrchr (filename, '.'); } else { @@ -3672,7 +3676,7 @@ process_command_line (const int argc, char **argv) #endif break; - case 'e': + case '.': /* -ext : Add an extension suffix */ if (strlen (cob_optarg) > 15U) { cobc_err_exit (COBC_INV_PAR, "--ext"); @@ -4337,6 +4341,9 @@ process_filename (const char *filename) cb_strcasecmp (extension, COB_OBJECT_EXT) == 0 #if defined(_WIN32) || cb_strcasecmp (extension, "lib") == 0 +#if defined (__GNUC__) + || cb_strcasecmp (extension, "dll") == 0 +#endif #endif #if !defined(_WIN32) || defined(__MINGW32__) || defined(__MINGW64__) || cb_strcasecmp (extension, "a") == 0 @@ -6012,12 +6019,12 @@ xref_files_and_their_records (cb_tree file_list_p) cb_tree l; for (l = file_list_p; l; l = CB_CHAIN (l)) { + struct cb_file *file = CB_FILE (CB_VALUE (l)); pd_off = sprintf (print_data, "%-30.30s %-6u ", - CB_FILE (CB_VALUE (l))->name, - CB_FILE (CB_VALUE (l))->common.source_line); - xref_print (&CB_FILE (CB_VALUE (l))->xref, XREF_FILE, NULL); - if (CB_FILE (CB_VALUE (l))->record) { - (void)xref_fields (CB_FILE (CB_VALUE (l))->record); + file->name, file->common.source_line); + xref_print (&file->xref, XREF_FILE, NULL); + if (file->record) { + (void)xref_fields (file->record); } print_program_data (""); } @@ -6038,15 +6045,14 @@ xref_fields_in_section (struct cb_field *first_field_in_section) } static int -xref_labels (cb_tree label_list_p) +xref_labels (cb_tree statements) { - cb_tree l; char label_type = ' '; - struct cb_label *lab; - - for (l = label_list_p; l; l = CB_CHAIN (l)) { - if (CB_LABEL_P(CB_VALUE(l))) { - lab = CB_LABEL (CB_VALUE (l)); + cb_tree l; + for (l = statements; l; l = CB_CHAIN (l)) { + cb_tree stmt = CB_VALUE (l); + if (CB_LABEL_P (stmt)) { + struct cb_label *lab = CB_LABEL (stmt); if (lab->xref.skip) { continue; } @@ -7896,6 +7902,7 @@ process_translate (struct filename *fn) /* If processing raised errors set syntax-only flag to not loose the information "no codegen occurred" */ cb_flag_syntax_only = 1; + cb_flag_fast_compare = 0; return 1; } if (cb_flag_syntax_only) { @@ -9023,6 +9030,7 @@ process_file (struct filename *fn, int status) /* If preprocessing raised errors go on but only check syntax */ if (fn->has_error) { cb_flag_syntax_only = 1; + cb_flag_fast_compare = 0; } } else if (cb_src_list_file) { @@ -9156,6 +9164,7 @@ main (int argc, char **argv) cobc_flag_module = 1; } } else { + cb_flag_fast_compare = 0; cb_compile_level = CB_LEVEL_TRANSLATE; cobc_flag_main = 0; cobc_flag_module = 0; diff --git a/cobc/codegen.c b/cobc/codegen.c index ff36fb0dc..9c84e7136 100644 --- a/cobc/codegen.c +++ b/cobc/codegen.c @@ -153,7 +153,6 @@ static struct base_list *globext_cache = NULL; static struct base_list *local_base_cache = NULL; static struct string_list *string_cache = NULL; static struct string_list *source_cache = NULL; -static char *string_buffer = NULL; static struct label_list *label_cache = NULL; static struct ml_tree_list *ml_tree_cache = NULL; @@ -581,7 +580,6 @@ clear_local_codegen_vars (void) local_base_cache = NULL; local_field_cache = NULL; static_call_cache = NULL; - string_buffer = NULL; string_cache = NULL; ml_tree_cache = NULL; @@ -1753,7 +1751,8 @@ output_attr (const cb_tree x) if (f->flag_binary_swap) { flags |= COB_FLAG_BINARY_SWAP; } - if (f->flag_real_binary) { + if (f->flag_real_binary + || f->usage == CB_USAGE_COMP_5) { flags |= COB_FLAG_REAL_BINARY; } if (f->flag_is_pointer) { @@ -1796,10 +1795,9 @@ output_attr (const cb_tree x) break; } - id = lookup_attr (type, - f->pic->flag_has_p ? f->pic->real_digits : f->pic->digits, - f->pic->scale, flags, - f->pic->str, f->pic->lenstr); + id = lookup_attr (type, f->pic->digits, + f->pic->scale, flags, + f->pic->str, f->pic->lenstr); break; } } @@ -2865,7 +2863,7 @@ output_local_field_cache (struct cb_program *prog) output ("/* %s is not local */", f->name); output_newline (); } - if (f->storage == CB_STORAGE_REPORT + if (f->storage == CB_STORAGE_REPORT && f->flag_occurs && f->occurs_max > 1) { /* generate sub-fields and a comment each */ @@ -2941,7 +2939,7 @@ output_local_fields (struct cb_program *prog) for (f = rep->records; f; f = f->sister) { if (f->storage == CB_STORAGE_WORKING && !(f->report_flag & COB_REPORT_REF_EMITTED)) { - output_emit_field(cb_build_field_reference (f, NULL), NULL); + output_emit_field (cb_build_field_reference (f, NULL), NULL); } } } @@ -3378,7 +3376,7 @@ output_integer (cb_tree x) break; case CB_TAG_BINARY_OP: { const struct cb_binary_op *p = CB_BINARY_OP (x); - if (p->flag) { + if (p->flag == BOP_RESOLVE_AS_INTEGER) { if (!cb_fits_int (p->x) || !cb_fits_int (p->y)) { output ("cob_get_int ("); output_param (x, -1); @@ -3546,14 +3544,6 @@ output_integer (cb_tree x) } break; - case CB_USAGE_PACKED: - if (f->pic->scale == 0 && f->pic->digits < 10) { - optimize_defs[COB_GET_PACKED_INT] = 1; - output_func_1 ("cob_get_packed_int", x); - return; - } - break; - case CB_USAGE_BINARY: case CB_USAGE_COMP_5: case CB_USAGE_COMP_X: @@ -3663,6 +3653,16 @@ output_integer (cb_tree x) } break; +#if 0 /* libcob's optimized version is not slower, so drop that */ + case CB_USAGE_PACKED: + if (f->pic->scale == 0 && f->pic->digits < 10) { + optimize_defs[COB_GET_PACKED_INT] = 1; + output_func_1 ("cob_get_packed_int", x); + return; + } + break; +#endif + default: break; } @@ -3675,6 +3675,11 @@ output_integer (cb_tree x) output_param (x, -1); output (")"); break; + + case CB_TAG_FUNCALL: + output_funcall (x); + break; + /* LCOV_EXCL_START */ default: CB_TREE_TAG_UNEXPECTED_ABORT (x); @@ -3685,10 +3690,6 @@ output_integer (cb_tree x) static void output_long_integer (cb_tree x) { - struct cb_binary_op *p; - struct cb_cast *cp; - struct cb_field *f; - switch (CB_TREE_TAG (x)) { case CB_TAG_CONST: if (x == cb_zero) { @@ -3714,9 +3715,9 @@ output_long_integer (cb_tree x) case CB_TAG_LITERAL: output (CB_FMT_LLD_F, cb_get_long_long (x)); break; - case CB_TAG_BINARY_OP: - p = CB_BINARY_OP (x); - if (p->flag) { + case CB_TAG_BINARY_OP: { + const struct cb_binary_op *p = CB_BINARY_OP (x); + if (p->flag == BOP_RESOLVE_AS_INTEGER) { if (!cb_fits_long_long (p->x) || !cb_fits_long_long (p->y)) { output ("cob_get_llint ("); @@ -3740,8 +3741,9 @@ output_long_integer (cb_tree x) output (")"); } break; - case CB_TAG_CAST: - cp = CB_CAST (x); + } + case CB_TAG_CAST: { + const struct cb_cast *cp = CB_CAST (x); switch (cp->cast_type) { case CB_CAST_ADDRESS: output ("("); @@ -3766,8 +3768,9 @@ output_long_integer (cb_tree x) /* LCOV_EXCL_STOP */ } break; - case CB_TAG_REFERENCE: - f = cb_code_field (x); + } + case CB_TAG_REFERENCE: { + struct cb_field *f = cb_code_field (x); switch (f->usage) { case CB_USAGE_INDEX: if (f->index_type != CB_NORMAL_INDEX) { @@ -3907,12 +3910,23 @@ output_long_integer (cb_tree x) } break; +#if 0 /* libcob's optimized version is not slower, so drop that */ + case CB_USAGE_PACKED: + if (f->pic->scale == 0 && f->pic->digits < 19) { + optimize_defs[COB_GET_PACKED_INT64] = 1; + output_func_1 ("cob_get_packed_int64", x); + return; + } + break; +#endif + default: break; } output_func_1 ("cob_get_llint", x); break; + } case CB_TAG_INTRINSIC: output ("cob_get_llint ("); output_param (x, -1); @@ -4049,12 +4063,7 @@ create_field (struct cb_field *f, cb_tree x) static void output_param (cb_tree x, int id) { - struct cb_reference *r; struct cb_field *f; - struct cb_cast *cp; - struct cb_binary_op *bp; - struct cb_intrinsic *ip; - struct cb_alphabet_name *abp; cb_tree l; int add_comma = 0; @@ -4091,8 +4100,8 @@ output_param (cb_tree x, int id) case CB_TAG_LOCALE_NAME: output_param (CB_LOCALE_NAME(x)->list, id); break; - case CB_TAG_ALPHABET_NAME: - abp = CB_ALPHABET_NAME (x); + case CB_TAG_ALPHABET_NAME: { + const struct cb_alphabet_name *abp = CB_ALPHABET_NAME (x); switch (abp->alphabet_type) { case CB_ALPHABET_ASCII: #ifdef COB_EBCDIC_MACHINE @@ -4130,8 +4139,9 @@ output_param (cb_tree x, int id) break; } break; - case CB_TAG_CAST: - cp = CB_CAST (x); + } + case CB_TAG_CAST: { + const struct cb_cast *cp = CB_CAST (x); switch (cp->cast_type) { case CB_CAST_INTEGER: output_integer (cp->val); @@ -4152,10 +4162,21 @@ output_param (cb_tree x, int id) case CB_CAST_PROGRAM_POINTER: output_param (cp->val, id); break; + case CB_CAST_NEGATIVE_INTEGER: + output ("-("); + output_integer (cp->val); + output (")"); + break; + case CB_CAST_NEGATIVE_LONG_INT: + output ("-("); + output_long_integer (cp->val); + output (")"); + break; default: break; } break; + } case CB_TAG_DECIMAL: output ("%s%d", CB_PREFIX_DECIMAL, CB_DECIMAL (x)->id); break; @@ -4168,16 +4189,18 @@ output_param (cb_tree x, int id) case CB_TAG_REPORT: output ("&%s%s", CB_PREFIX_REPORT, CB_REPORT_PTR (x)->cname); break; - case CB_TAG_REPORT_LINE: + case CB_TAG_REPORT_LINE: { + const struct cb_reference *r /* NOTE: do not use CB_REFERENCE_P because 'x' has a tag of CB_TAG_REPORT_LINE */ #if 1 /* FIXME: Should have expected type! */ - r = (struct cb_reference *)x; + = (struct cb_reference *)x; #else - r = CB_REFERENCE (x); + = CB_REFERENCE (x); #endif f = CB_FIELD (r->value); output ("&%s%d", CB_PREFIX_REPORT_LINE, f->id); break; + } case CB_TAG_LITERAL: if (nolitcast) { output ("&%s%d", CB_PREFIX_CONST, cb_lookup_literal (x, 0)); @@ -4189,8 +4212,8 @@ output_param (cb_tree x, int id) case CB_TAG_FIELD: x = cb_build_field_reference (CB_FIELD (x), NULL); /* Fall through */ - case CB_TAG_REFERENCE: - r = CB_REFERENCE (x); + case CB_TAG_REFERENCE: { + const struct cb_reference *r = CB_REFERENCE (x); if (CB_LOCALE_NAME_P (r->value)) { output_param (CB_LOCALE_NAME (r->value)->list, id); break; @@ -4340,7 +4363,7 @@ output_param (cb_tree x, int id) output_prefix (); } } - output ("COB_SET_FLD(f%d, ", stack_id++); + output ("COB_SET_FLD (f%d, ", stack_id++); output_size (x); output (", "); output_data (x); @@ -4356,8 +4379,9 @@ output_param (cb_tree x, int id) output (" )"); } break; - case CB_TAG_BINARY_OP: - bp = CB_BINARY_OP (x); + } + case CB_TAG_BINARY_OP: { + const struct cb_binary_op *bp = CB_BINARY_OP (x); output ("cob_intr_binop ("); output_param (bp->x, id); output (", "); @@ -4372,8 +4396,9 @@ output_param (cb_tree x, int id) output_param (bp->y, id); output (")"); break; - case CB_TAG_INTRINSIC: - ip = CB_INTRINSIC (x); + } + case CB_TAG_INTRINSIC: { + const struct cb_intrinsic *ip = CB_INTRINSIC (x); if (ip->isuser) { char *func; l = cb_ref (ip->name); @@ -4453,6 +4478,7 @@ output_param (cb_tree x, int id) } output (")"); break; + } case CB_TAG_ML_TREE: output ("&%s%d", CB_PREFIX_ML_TREE, CB_ML_TREE (x)->id); break; @@ -4647,6 +4673,13 @@ output_funcall_typed_report (struct cb_funcall *p, const char type) } } + +/* +TODO: fix strange errors in "Simple Expressions with figurative constants", + seen if the following is defined +#define GEN_CHAR_AS_CHAR +*/ + static void output_funcall_typed (struct cb_funcall *p, const char type) { @@ -4680,7 +4713,18 @@ output_funcall_typed (struct cb_funcall *p, const char type) } else if (p->argv[1] == cb_high) { output (") - 255)"); } else if (CB_LITERAL_P (p->argv[1])) { - output (") - %d)", *(CB_LITERAL (p->argv[1])->data)); + const unsigned char c = CB_LITERAL (p->argv[1])->data[0]; +#if !defined (GEN_CHAR_AS_CHAR) /* old "simple" version */ + output (") - %u)", c); +#else /* "complex" one that we use everywhere else */ + if (!isprint (c)) { + output (") - '\\%03o')", c); + } else if (c == '\'' || c == '\\') { + output (") - '\\%c')", c); + } else { + output (") - '%c')", c); + } +#endif } else { output (") - *("); output_data (p->argv[1]); @@ -4803,12 +4847,26 @@ output_funcall_typed (struct cb_funcall *p, const char type) } +static void COB_INLINE COB_A_INLINE +output_funcall_item (cb_tree x, const int i, unsigned int func_nolitcast) +{ + if (x && CB_LITERAL_P (x)) { + nolitcast = func_nolitcast; + } else { + nolitcast = 0; + } + output_param (x, i); +} + + static void output_funcall (cb_tree x) { struct cb_funcall *p; cb_tree l; int i; + const int nolitcast_origin = nolitcast; + const int screenptr_origin = screenptr; p = CB_FUNCALL (x); if (p->name[0] == '$') { @@ -4819,33 +4877,22 @@ output_funcall (cb_tree x) screenptr = p->screenptr; output ("%s (", p->name); for (i = 0; i < p->argc; i++) { + if (i) { + output (", "); + } if (p->varcnt && i + 1 == p->argc) { - output ("%d, ", p->varcnt); - for (l = p->argv[i]; l; l = CB_CHAIN (l)) { - if (CB_VALUE (l) && CB_LITERAL_P (CB_VALUE (l))) { - nolitcast = p->nolitcast; - } - output_param (CB_VALUE (l), i); - nolitcast = 0; - i++; - if (CB_CHAIN (l)) { - output (", "); - } - } - } else { - if (p->argv[i] && CB_LITERAL_P (p->argv[i])) { - nolitcast = p->nolitcast; - } - output_param (p->argv[i], i); - nolitcast = 0; - if (i + 1 < p->argc) { + output ("%d", p->varcnt); + for (l = p->argv[i]; l; l = CB_CHAIN (l), i++) { output (", "); + output_funcall_item (CB_VALUE (l), i, p->nolitcast); } + } else { + output_funcall_item (p->argv[i], i, p->nolitcast); } } output (")"); - nolitcast = 0; - screenptr = 0; + nolitcast = nolitcast_origin; + screenptr = screenptr_origin; } static void @@ -4858,12 +4905,13 @@ output_func_1 (const char *name, cb_tree x) /* Condition */ +/* output condition 'x' with optional storage in + C field "ret" depending on 'save_flag' */ static void output_cond (cb_tree x, const int save_flag) { - struct cb_binary_op *p; - in_cond = 1; + switch (CB_TREE_TAG (x)) { case CB_TAG_CONST: if (x == cb_true) { @@ -4877,8 +4925,8 @@ output_cond (cb_tree x, const int save_flag) } /* LCOV_EXCL_STOP */ break; - case CB_TAG_BINARY_OP: - p = CB_BINARY_OP (x); + case CB_TAG_BINARY_OP: { + const struct cb_binary_op *p = CB_BINARY_OP (x); switch (p->op) { case '!': output ("!"); @@ -4904,7 +4952,12 @@ output_cond (cb_tree x, const int save_flag) case ']': case '~': output ("((int)"); - output_cond (p->x, save_flag); + if (save_flag + && p->flag == BOP_OPERANDS_SWAPPED) { + output_cond (p->x, 2); + } else { + output_cond (p->x, save_flag); + } switch (p->op) { case '=': output (" == 0"); @@ -4936,9 +4989,15 @@ output_cond (cb_tree x, const int save_flag) break; } break; + } case CB_TAG_FUNCALL: if (save_flag) { - output ("(ret = "); + /* handle original swapped function */ + if (save_flag == 2) { + output ("(ret = -"); + } else { + output ("(ret = "); + } } output_funcall (x); if (save_flag) { @@ -4947,7 +5006,12 @@ output_cond (cb_tree x, const int save_flag) break; case CB_TAG_LIST: if (save_flag) { - output ("(ret = "); + /* handle original swapped function */ + if (save_flag == 2) { + output ("(ret = -"); + } else { + output ("(ret = "); + } } inside_stack[inside_check++] = 0; /* LCOV_EXCL_START */ @@ -4975,6 +5039,7 @@ output_cond (cb_tree x, const int save_flag) CB_TREE_TAG_UNEXPECTED_ABORT (x); /* LCOV_EXCL_STOP */ } + in_cond = 0; } @@ -5012,11 +5077,11 @@ deduce_initialize_type (struct cb_initialize *p, struct cb_field *f, return INITIALIZE_ONE; } - if (f->flag_external && !p->flag_init_statement) { + if (f->flag_external && p->statement == STMT_INIT_STORAGE) { return INITIALIZE_NONE; } - if (f->redefines && (!topfield || !p->flag_init_statement)) { + if (f->redefines && (!topfield || p->statement != STMT_INITIALIZE)) { return INITIALIZE_NONE; } @@ -5061,7 +5126,7 @@ deduce_initialize_type (struct cb_initialize *p, struct cb_field *f, } if (p->flag_default) { - if (cb_default_byte >= 0 && !p->flag_init_statement) { + if (p->statement == STMT_INIT_STORAGE && cb_default_byte >= 0) { return INITIALIZE_DEFAULT; } switch (f->usage) { @@ -5176,7 +5241,7 @@ static int initialize_uniform_char (const struct cb_field *f, const struct cb_initialize *p) { - if (cb_default_byte >= 0 && !p->flag_init_statement) { + if (p->statement == STMT_INIT_STORAGE && cb_default_byte >= 0) { return cb_default_byte; } @@ -5390,10 +5455,9 @@ output_initialize_fp (cb_tree x, struct cb_field *f) } static void -output_initialize_uniform (cb_tree x, const unsigned char cc, const int size) +output_initialize_uniform (cb_tree x, struct cb_field *f, + const unsigned char cc, const int size) { - struct cb_field *f = cb_code_field (x); - /* REPORT lines are cleared to SPACES */ if (f->storage == CB_STORAGE_REPORT && cc == ' ') { @@ -5404,7 +5468,7 @@ output_initialize_uniform (cb_tree x, const unsigned char cc, const int size) if (size == 1) { output ("*(cob_u8_ptr)("); output_data (x); -#if 1 /* old "simple" version */ +#if !defined (GEN_CHAR_AS_CHAR) /* old "simple" version */ output (") = %u;", cc); #else /* "complex" one that we use everywhere else */ if (!isprint (cc)) { @@ -5418,8 +5482,8 @@ output_initialize_uniform (cb_tree x, const unsigned char cc, const int size) } else { output ("memset ("); output_data (x); -#if 1 /* old "simple" version */ - output (", %u, ", cc); +#if !defined (GEN_CHAR_AS_CHAR) /* old "simple" version */ + output (", %u, ", cc); #else /* "complex" one that we use everywhere else */ if (!isprint (cc)) { output (", '\\%03o', ", cc); @@ -5449,7 +5513,7 @@ static void output_initialize_chaining (struct cb_field *f, struct cb_initialize *p) { /* only handle CHAINING for program initialization */ - if (p->flag_init_statement) { + if (p->statement == STMT_INITIALIZE) { return; } /* Note: CHAINING must be an extra initialization step as parameters not passed @@ -5465,7 +5529,7 @@ output_initialize_chaining (struct cb_field *f, struct cb_initialize *p) static void output_initialize_to_value (struct cb_field *f, cb_tree x, - const int flag_init_statement) + const enum cob_statement statement) { cb_tree value; struct cb_literal *l; @@ -5494,7 +5558,7 @@ output_initialize_to_value (struct cb_field *f, cb_tree x, } /* Check for non-standard OCCURS */ if ((f->level == 1 || f->level == 77) - && f->flag_occurs && !flag_init_statement) { + && f->flag_occurs && statement == STMT_INIT_STORAGE) { init_occurs = 1; } else { init_occurs = 0; @@ -5583,7 +5647,7 @@ output_initialize_to_value (struct cb_field *f, cb_tree x, output_prefix (); output ("*(cob_u8_ptr)("); output_data (x); -#if 1 /* old "simple" version */ +#if !defined (GEN_CHAR_AS_CHAR) /* old "simple" version */ output (") = %u;", c); #else /* "complex" one that we use everywhere else */ if (!isprint (c)) { @@ -5614,15 +5678,15 @@ output_initialize_to_value (struct cb_field *f, cb_tree x, output_prefix (); output ("memset ("); output_data (x); -#if 1 /* old "simple" version */ +#if !defined (GEN_CHAR_AS_CHAR) /* old "simple" version */ output (", %u", c); #else /* "complex" one that we use everywhere else */ if (!isprint (c)) { output (", '\\%03o'", c); } else if (c == '\'' || c == '\\') { - output (", '\\%c", c; + output (", '\\%c", c); } else { - output (", '%c'", c; + output (", '%c'", c); } #endif output (", %u);", (unsigned int)lsize); @@ -5671,8 +5735,8 @@ output_initialize_to_value (struct cb_field *f, cb_tree x, output_prefix (); output ("memset ("); output_data (x); -#if 1 /* old "simple" version */ - output (", %u",c); +#if !defined (GEN_CHAR_AS_CHAR) /* old "simple" version */ + output (", %u", c); #else /* "complex" one that we use everywhere else */ if (!isprint (c)) { output (", '\\%03o'", c); @@ -5776,15 +5840,69 @@ output_initialize_to_default (struct cb_field *f, cb_tree x) } static void -output_initialize_one (struct cb_initialize *p, cb_tree x) +output_c_info (void) { - struct cb_field *f; + if (cb_flag_c_line_directives) { + output ("#line %d \"%s\"", output_line_number + 1, output_name); + output_newline (); + } +} - f = cb_code_field (x); +static void +output_cobol_info (cb_tree x) +{ + const char *p = x->source_file; + if (!cb_cob_line_num) { + skip_line_num = 0; + return; + } + if (!cb_flag_c_line_directives) { + char *q = last_line_num + strlen(last_line_num); + sprintf (last_line_num, "#line %d \"", x->source_line); + while (*p) { + if (*p == '\\' ) { + *q++ = '\\'; + } + *q++ = *p++; + } + sprintf (q, "\""); + } + output ("#line %d \"", x->source_line); + + while (*p) { + if (*p == '\\') { + output ("%c",'\\'); + } + output ("%c",*p++); + } + output ("\""); + skip_line_num++; + output_newline (); +} + +static void +output_init_comment_and_source_ref (struct cb_field *f) +{ + /* output comment and source location for each field */ + output_line ("/* initialize field %s */", f->name); + if (cb_flag_c_line_directives && f->common.source_line) { + output_cobol_info (CB_TREE (f)); + output_line ("cob_nop ();"); + output_c_info (); + } +} + +static void +output_initialize_one (struct cb_initialize *p, cb_tree x) +{ + struct cb_field *f = cb_code_field (x); /* Initialize TO VALUE */ if (p->val && f->values) { - output_initialize_to_value (f, x, p->flag_init_statement); + if (p->statement == STMT_INIT_STORAGE) { + output_init_comment_and_source_ref (f); + } + output_initialize_to_value (f, x, p->statement); return; } @@ -5801,6 +5919,9 @@ output_initialize_one (struct cb_initialize *p, cb_tree x) /* Initialize TO DEFAULT */ if (p->flag_default) { + if (p->statement == STMT_INIT_STORAGE) { + output_init_comment_and_source_ref (f); + } output_initialize_to_default (f, x); } } @@ -5867,7 +5988,7 @@ output_initialize_multi_values (struct cb_initialize *p, cb_tree x, struct cb_fi struct cb_field *pftbl[COB_MAX_SUBSCRIPTS+1] = { NULL }; int idxtbl[COB_MAX_SUBSCRIPTS+1] = { 0 }; int occtbl[COB_MAX_SUBSCRIPTS+1] = { 0 }; - int idx, idx_clr, total_occurs; + int idx, idx_clr; #if 0 /* CHECKME: the init above should be fine */ for (idx=0; idx <= COB_MAX_SUBSCRIPTS; idx++) { @@ -5875,14 +5996,12 @@ output_initialize_multi_values (struct cb_initialize *p, cb_tree x, struct cb_fi pftbl[idx] = NULL; } #endif - total_occurs = 1; idx_clr = 0; for (idx = 0, pf = f; pf; pf = pf->parent) { if (pf->flag_occurs && pf->occurs_max > 1) { pftbl [idx] = pf; occtbl[idx] = pf->occurs_max; - total_occurs *= pf->occurs_max; idx++; } } @@ -5999,7 +6118,10 @@ output_initialize_compound (struct cb_initialize *p, cb_tree x) } else { size = ff->offset + ff->size - last_field->offset; } - output_initialize_uniform (c, (unsigned char)last_char, size); + if (p->statement == STMT_INIT_STORAGE) { + output_init_comment_and_source_ref (last_field); + } + output_initialize_uniform (c, last_field, (unsigned char)last_char, size); } break; } @@ -6056,6 +6178,9 @@ output_initialize_compound (struct cb_initialize *p, cb_tree x) cb_tree stmt = CB_BUILD_FUNCALL_3 ("memset", CB_BUILD_CAST_ADDRESS (c), cb_int (init), cb_int (f->size * f->occurs_max)); + if (p->statement == STMT_INIT_STORAGE) { + output_init_comment_and_source_ref (f); + } output_stmt (stmt); continue; /* direct initialization possible @@ -6126,7 +6251,7 @@ static void output_initialize_values_table_format (struct cb_initialize *p) { if (needs_table_format_value - && (!p->flag_init_statement || p->val == cb_true)) { + && (p->statement == STMT_INIT_STORAGE || p->val == cb_true)) { struct cb_field *f = cb_code_field (p->var); const cb_tree c = cb_build_field_reference (f, NULL); CB_REFERENCE(c)->subs = CB_BUILD_CHAIN (cb_int1, CB_REFERENCE(c)->subs); @@ -6150,7 +6275,7 @@ output_initialize_values_table_format (struct cb_initialize *p) static void output_initialize (struct cb_initialize *p) { - struct cb_field *f = cb_code_field (p->var); + struct cb_field *f = cb_code_field (p->var); int c; const enum cobc_init_type type @@ -6172,15 +6297,15 @@ output_initialize (struct cb_initialize *p) /* TODO: if cb_default_byte >= 0 do a huge memset first, then only emit setting for fields that need it (VALUE clause or special category - in general: not matching cb_default_byte); - similar for cb_default_byte == -2 (just without the - initial huge memset) */ + similar for cb_default_byte == CB_DEFAULT_BYTE_NONE (-2), + just without the initial huge memset */ needs_table_format_value = 0; /* Check for non-standard OCCURS */ if ((f->level == 1 || f->level == 77) && f->flag_occurs - && !p->flag_init_statement) { + && p->statement == STMT_INIT_STORAGE) { cb_tree x; switch (type) { case INITIALIZE_ONE: @@ -6191,7 +6316,10 @@ output_initialize (struct cb_initialize *p) case INITIALIZE_DEFAULT: c = initialize_uniform_char (f, p); if (c != -1) { - output_initialize_uniform (p->var, (unsigned char)c, f->occurs_max); + if (p->statement == STMT_INIT_STORAGE) { + output_init_comment_and_source_ref (f); + } + output_initialize_uniform (p->var, f, (unsigned char)c, f->occurs_max); output_initialize_chaining (f, p); return; } @@ -6236,7 +6364,10 @@ output_initialize (struct cb_initialize *p) case INITIALIZE_DEFAULT: c = initialize_uniform_char (f, p); if (c != -1) { - output_initialize_uniform (p->var, (unsigned char)c, f->size); + if (p->statement == STMT_INIT_STORAGE) { + output_init_comment_and_source_ref (f); + } + output_initialize_uniform (p->var, f, (unsigned char)c, f->size); output_initialize_chaining (f, p); return; } @@ -6292,6 +6423,13 @@ output_search_whens (cb_tree table, struct cb_field *p, cb_tree at_end, idx = CB_VALUE (p->index_list); } + output_block_open (); + output_prefix (); + output ("const int max = "); + output_occurs (p); + output (";"); + output_newline (); + /* Start loop */ last_line = -1; /* force statement reference output at begin of loop */ last_stmt = -1; @@ -6301,9 +6439,7 @@ output_search_whens (cb_tree table, struct cb_field *p, cb_tree at_end, output_integer (idx); output (" < 1) || ("); output_integer (idx); - output (" > "); - output_occurs (p); - output (") ) /* Is Table Index valid? */"); + output (" > max) ) /* Is Table Index valid? */"); output_newline (); output_block_open (); /* CHECKME: What should be done when the index is invalid */ @@ -6313,8 +6449,8 @@ output_search_whens (cb_tree table, struct cb_field *p, cb_tree at_end, output_newline (); /* -- */ output_block_close (); - output_line ("for (;;) {"); - output_indent_level += 2; + output_line ("for (;;)"); + output_block_open (); /* End test */ output_prefix (); @@ -6322,11 +6458,8 @@ output_search_whens (cb_tree table, struct cb_field *p, cb_tree at_end, output_integer (idx); output (" < 1) || ("); output_integer (idx); - output (" > "); - output_occurs (p); - output (") )"); + output (" > max) )"); output_newline (); - output_line ("/* Table end */"); output_block_open (); if (at_end) { output_source_reference (CB_PAIR_X (at_end), STMT_AT_END); @@ -6366,10 +6499,15 @@ output_search_whens (cb_tree table, struct cb_field *p, cb_tree at_end, output_move (idx, var); } /* End loop */ - output_indent_level -= 2; - output_line ("}"); + output_block_close (); + + output_block_close (); } +/* generate code for SEARCH ALL, + setup head (starting with 0) and tail (starting with max), + using the mid as index, then compare, + switching head/tail to the current index until match found */ static void output_search_all (cb_tree table, struct cb_field *p, cb_tree at_end, cb_tree when_cond, cb_tree when_stmts) @@ -6387,14 +6525,6 @@ output_search_all (cb_tree table, struct cb_field *p, cb_tree at_end, output (" + 1;"); output_newline (); - /* Check for at least one entry */ - if (p->depending) { - output_prefix (); - output ("if ("); - output_occurs (p); - output (" == 0) head = tail;"); - output_newline (); - } output_newline (); /* Start loop */ @@ -6403,13 +6533,12 @@ output_search_all (cb_tree table, struct cb_field *p, cb_tree at_end, output_line ("for (;;)"); output_block_open (); - /* End test */ + /* End test, note: if ODO is 0 then "if 0 >= 0+1 -1" -> direct exit */ output_line ("if (head >= tail - 1)"); - output_line ("/* Table end */"); output_block_open (); if (at_end) { output_source_reference (CB_PAIR_X (at_end), STMT_AT_END); - output_stmt (CB_PAIR_Y (at_end)); + output_stmt (CB_PAIR_Y (at_end)); /* this is a CB_LIST ending with "break" */ } else { /* position to table here, otherwise we likely land in the WHEN (Note: if there's an explicit END-SEARCH there's always @@ -6435,7 +6564,7 @@ output_search_all (cb_tree table, struct cb_field *p, cb_tree at_end, output_newline (); output_newline (); - /* WHEN test */ + /* (single) WHEN test */ { /* output_source_reference would be ok here but we don't want to trace this (already tracing @@ -6484,12 +6613,30 @@ output_search (struct cb_search *p) { struct cb_field *fp = cb_code_field (p->table); - /* TODO: Add run-time checks for the table, including ODO */ + /* output ODO run-time check for the table */ + if (CB_EXCEPTION_ENABLE (COB_EC_BOUND_SUBSCRIPT) && fp->odo_level != 0) { + struct cb_field *f; + for (f = fp; f; f = f->children) { + if (CB_VALID_TREE (f->depending) + && !f->flag_unbounded) { + cb_tree check = CB_BUILD_FUNCALL_5 ("cob_check_odo", + cb_build_cast_int (f->depending), + cb_int (f->occurs_min), + cb_int (f->occurs_max), + CB_BUILD_STRING0 (f->name), + CB_BUILD_STRING0 (CB_FIELD_PTR (f->depending)->name)); + optimize_defs[COB_CHK_ODO] = 1; + output_stmt (check); + } + } + } if (p->flag_all) { + /* note: no runtime check for index, because set by this code */ output_search_all (p->table, fp, p->at_end, CB_IF (p->whens)->test, CB_IF (p->whens)->stmt1); } else { + /* note: no runtime check for index, because if too big -> AT END */ output_search_whens (p->table, fp, p->at_end, p->var, p->whens); } } @@ -7446,7 +7593,7 @@ output_call (struct cb_call *p) lookup_call (name_str); callname = s; - output_line ("if (call_%s.funcvoid == NULL || cob_glob_ptr->cob_physical_cancel)", name_str); + output_line ("if (call_%s.funcvoid == NULL || cob_glob_ptr->cob_physical_cancel == 1)", name_str); output_block_open (); output_prefix (); @@ -8104,10 +8251,38 @@ static void output_perform_until (struct cb_perform *p, cb_tree l) { struct cb_perform_varying *v; - struct cb_field *f; cb_tree next; if (l == NULL) { +#if 0 /* FIXME: add back as option, because not conforming to ISO */ + if (CB_EXCEPTION_ENABLE (COB_EC_BOUND_SUBSCRIPT)) { + cb_tree xn; + /* Check all INDEXED BY variables used in VARYING */ + for (xn = p->varying; xn; xn = CB_CHAIN (xn)) { + v = CB_PERFORM_VARYING (CB_VALUE (xn)); + if (v->name + && CB_REF_OR_FIELD_P (v->name)) { + struct cb_field *f = CB_FIELD_PTR (v->name); + if (f->flag_indexed_by + && f->index_qual) { + f = f->index_qual; + output_prefix (); + output ("cob_check_subscript ("); + output_integer (v->name); + output (", "); + if (f->depending) { + output_integer (f->depending); + output (", \"%s\", 1", f->name); + } else { + output ("%d, \"%s\", 0", f->occurs_max, f->name); + } + output (");"); + output_newline (); + } + } + } + } +#endif /* Perform body at the end */ output_perform_once (p); return; @@ -8125,7 +8300,7 @@ output_perform_until (struct cb_perform *p, cb_tree l) CB_PERFORM_VARYING (CB_VALUE (next))->name); /* DEBUG */ if (current_prog->flag_gen_debug) { - f = CB_FIELD (cb_ref (CB_PERFORM_VARYING (CB_VALUE (next))->name)); + struct cb_field *f = CB_FIELD (cb_ref (CB_PERFORM_VARYING (CB_VALUE (next))->name)); if (f->flag_field_debug) { output_stmt (cb_build_debug (cb_debug_name, (const char *)f->name, NULL)); @@ -8164,30 +8339,6 @@ output_perform_until (struct cb_perform *p, cb_tree l) output (")"); output_newline (); output_line (" break;"); - if (CB_EXCEPTION_ENABLE (COB_EC_BOUND_SUBSCRIPT) - && next) { - cb_tree xn; - /* Check all INDEXED BY variables used in VARYING */ - for (xn = l; xn; xn = CB_CHAIN (xn)) { - struct cb_field *q; - f = CB_FIELD_PTR (CB_PERFORM_VARYING(CB_VALUE (xn))->name); - if (!f->flag_indexed_by) continue; - if (!f->index_qual) continue; - q = f->index_qual; - output_prefix (); - output ("cob_check_subscript ("); - output_integer (CB_PERFORM_VARYING(CB_VALUE (xn))->name); - output (", "); - if (q->depending) { - output_integer (q->depending); - output (", \"%s\", 1",f->name); - } else { - output ("%d, \"%s\", 0",q->occurs_max,f->name); - } - output (");"); - output_newline (); - } - } if (p->test == CB_BEFORE) { output_perform_until (p, next); @@ -8843,47 +8994,6 @@ output_ferror_stmt (const struct cb_statement *stmt) } } -static void -output_c_info (void) -{ - if (cb_flag_c_line_directives) { - output ("#line %d \"%s\"", output_line_number + 1, output_name); - output_newline (); - } -} - -static void -output_cobol_info (cb_tree x) -{ - const char *p = x->source_file; - if (!cb_cob_line_num) { - skip_line_num = 0; - return; - } - if (!cb_flag_c_line_directives) { - char *q = last_line_num + strlen(last_line_num); - sprintf (last_line_num, "#line %d \"", x->source_line); - while(*p){ - if( *p == '\\' ){ - *q++ = '\\'; - } - *q++ = *p++; - } - sprintf (q, "\""); - } - output ("#line %d \"", x->source_line); - - while (*p) { - if (*p == '\\') { - output ("%c",'\\'); - } - output ("%c",*p++); - } - output ("\""); - skip_line_num++; - output_newline (); -} - static void output_module_source_for_tree (cb_tree x) { @@ -8959,7 +9069,7 @@ output_line_and_trace_info (cb_tree x, const enum cob_statement stmnt) if ( (cb_flag_c_line_directives || cb_flag_source_location || cb_cob_line_num) - && x->source_file) { + && x->source_line) { output_cobol_info (x); if (cb_flag_source_location) { output_line ("module->statement = %s;", stmnt_enum); @@ -9547,7 +9657,8 @@ output_stmt (cb_tree x) } /* LCOV_EXCL_START */ if (x == cb_error_node) { - cobc_err_msg (_("unexpected error_node parameter")); + /* untranslated as unexpected */ + cobc_err_msg ("unexpected error_node parameter"); COBC_ABORT (); } /* LCOV_EXCL_STOP */ @@ -10230,13 +10341,13 @@ output_screen_definition (struct cb_field *p) static void output_screen_init (struct cb_field *p, struct cb_field *previous) { - int type; - - type = (p->children ? COB_SCREEN_TYPE_GROUP : + const int type = (p->children ? COB_SCREEN_TYPE_GROUP : p->values ? COB_SCREEN_TYPE_VALUE : (p->size > 0) ? COB_SCREEN_TYPE_FIELD : COB_SCREEN_TYPE_ATTRIBUTE); + output_prefix (); - output ("cob_set_screen (&%s%d, ", CB_PREFIX_SCR_FIELD, p->id); + output ("COB_SET_SCREEN (%s%d, %d, 0x" CB_FMT_LLX ", ", + CB_PREFIX_SCR_FIELD, p->id, type, p->screen_flag); if (p->sister && p->sister->level != 1) { output ("&%s%d, ", CB_PREFIX_SCR_FIELD, p->sister->id); @@ -10268,10 +10379,10 @@ output_screen_init (struct cb_field *p, struct cb_field *previous) if (type == COB_SCREEN_TYPE_FIELD) { output_param (cb_build_field_reference (p, NULL), -1); - output (", "); } else { - output ("NULL, "); + output ("NULL"); } + output (", "); output_newline (); output_prefix (); @@ -10280,24 +10391,24 @@ output_screen_init (struct cb_field *p, struct cb_field *previous) if (type == COB_SCREEN_TYPE_VALUE) { /* Need a field reference here */ output_param (cb_build_field_reference (p, NULL), -1); - output (", "); } else { - output ("NULL, "); + output ("NULL"); } + output (", "); if (p->screen_line) { output_param (p->screen_line, 0); - output (", "); } else { - output ("NULL, "); + output ("NULL"); } + output (", "); if (p->screen_column) { output_param (p->screen_column, 0); - output (", "); } else { - output ("NULL, "); + output ("NULL"); } + output (", "); output_newline (); output_prefix (); @@ -10305,28 +10416,26 @@ output_screen_init (struct cb_field *p, struct cb_field *previous) if (p->screen_foreg) { output_param (p->screen_foreg, 0); - output (", "); } else { - output ("NULL, "); + output ("NULL"); } + output (", "); if (p->screen_backg) { output_param (p->screen_backg, 0); - output (", "); } else { - output ("NULL, "); + output ("NULL"); } + output (", "); if (p->screen_prompt) { output_param (p->screen_prompt, 0); - output (", "); } else { - output ("NULL, "); + output ("NULL"); } + output (", %d);", p->occurs_min); output_newline (); - output_line ("\t\t %d, %d, 0x" CB_FMT_LLX ");", - type, p->occurs_min, p->screen_flag); /* TODO: pass information for USAGE CONTROL items here */ @@ -10435,7 +10544,7 @@ output_report_data (struct cb_field *p) { if (p->storage == CB_STORAGE_REPORT) { output_emit_field (cb_build_field_reference (p, NULL), NULL); - if(p->report_sum_counter) { + if (p->report_sum_counter) { output_emit_field (p->report_sum_counter, "SUM"); } if (p->report_control) { @@ -10678,19 +10787,19 @@ output_report_one_field (struct cb_report *r, struct cb_field *f, int idx, int o output_report_field_cmt (f); if (f->report_field_name != NULL) - sprintf (field_name,"%s%d",CB_PREFIX_REPORT_FIELD,++report_field_id); + sprintf (field_name, "%s%d", CB_PREFIX_REPORT_FIELD, ++report_field_id); while (idx == 0 || idx <= occ) { if (idx <= 1) { if (f->report_field_name == NULL) { - sprintf (field_name,"%s%d",CB_PREFIX_REPORT_FIELD,++report_field_id); + sprintf (field_name, "%s%d", CB_PREFIX_REPORT_FIELD, ++report_field_id); f->report_field_name = cobc_parse_strdup (field_name); } else { strcpy (field_name, f->report_field_name); } } - output_local ("static cob_report_field %s\t= {%s,", field_name,report_field_name); + output_local ("static cob_report_field %s\t= {%s,", field_name, report_field_name); if (idx > 1) output_local ("&%s%d_%d,", CB_PREFIX_FIELD, f->id, idx); else @@ -10705,7 +10814,7 @@ output_report_one_field (struct cb_report *r, struct cb_field *f, int idx, int o output_local ("%d,", f->report_field_size); else output_local ("%d,", (int)f->report_field_from->size); - output_local ("%s%d", CB_PREFIX_BASE,p->id); + output_local ("%s%d", CB_PREFIX_BASE, p->id); if (f->report_field_offset > 0) output_local (" + %d", f->report_field_offset); else if (f->report_field_from->offset > 0) @@ -10788,39 +10897,39 @@ output_report_one_field (struct cb_report *r, struct cb_field *f, int idx, int o out[i++] = val[j]; } out[i] = 0; - output_local("\"%s\",%d,", out, (int)ref_size); - cobc_free((void*) val); - cobc_free((void*) out); + output_local ("\"%s\",%d,", out, (int)ref_size); + cobc_free ((void*) val); + cobc_free ((void*) out); } else { - output_local("NULL,0,"); + output_local ("NULL,0,"); } - if(f->step_count < f->size) + if (f->step_count < f->size) f->step_count = f->size; - if(f->report_column <= 0) /* No COLUMN was given */ + if (f->report_column <= 0) /* No COLUMN was given */ f->report_column = 1; - if((f->report_flag&~(COB_REPORT_EMITTED|COB_REPORT_COLUMN_PLUS)) == 0) { - output_local("0x0,%d",f->report_line); + if ((f->report_flag&~(COB_REPORT_EMITTED|COB_REPORT_COLUMN_PLUS)) == 0) { + output_local ("0x0,%d", f->report_line); } else { - output_local("0x%X,%d",f->report_flag&~COB_REPORT_EMITTED,f->report_line); + output_local ("0x%X,%d", f->report_flag&~COB_REPORT_EMITTED, f->report_line); } if (idx) { value = cb_list_entry (f->report_column_list, idx); if (value) { - output (",%d ",cb_get_int (value)); + output (",%d ", cb_get_int (value)); } else { - output_local(",%d",f->report_column); + output_local (",%d", f->report_column); } } else { - output_local(",%d",f->report_column); + output_local (",%d", f->report_column); } - output_local(",%d",f->step_count); - output_local(",%d",f->next_group_line); - output_local(",%d",f->level); - output_local(",0,0,0"); /* reportio flags: group_indicate, suppress, present_now */ + output_local (",%d", f->step_count); + output_local (",%d", f->next_group_line); + output_local (",%d", f->level); + output_local (",0,0,0"); /* reportio flags: group_indicate, suppress, present_now */ output_local ("};\n"); if (idx > 0 && idx < occ) { idx++; - sprintf (field_name,"%s%d",CB_PREFIX_REPORT_FIELD,++report_field_id); + sprintf (field_name, "%s%d", CB_PREFIX_REPORT_FIELD, ++report_field_id); continue; } break; @@ -10841,14 +10950,14 @@ output_report_def_fields (int bgn, int id, struct cb_field *f, struct cb_report } if (bgn == 0 - && (f->report_flag & COB_REPORT_LINE)) { /* Start of next Line */ + && (f->report_flag & COB_REPORT_LINE)) { /* Start of next Line */ return; } if (f->storage != CB_STORAGE_REPORT || f->report != r) return; if (f->sister) { - output_report_def_fields (0,id,f->sister,r); + output_report_def_fields (0, id, f->sister, r); } if (f->children) { @@ -10892,7 +11001,7 @@ output_report_def_fields (int bgn, int id, struct cb_field *f, struct cb_report break; } if (f->children) { - output_report_def_fields (0,id,f->children,r); + output_report_def_fields (0, id, f->children, r); } else if (p->values != NULL) { occ = p->occurs_max; @@ -10903,7 +11012,7 @@ output_report_def_fields (int bgn, int id, struct cb_field *f, struct cb_report } if (f->children) { - output_report_def_fields (0,id,f->children,r); + output_report_def_fields (0, id, f->children, r); } if (f->report_field_from == NULL @@ -10919,21 +11028,20 @@ output_report_def_fields (int bgn, int id, struct cb_field *f, struct cb_report int k, max, pos = 1; for (k = 0; k < idx; k++) { p = pftbl [k]; - if ( p + if (p && (p->report_flag & COB_REPORT_LINE)) { break; } max = occtbl[k+1]; while (idxtbl[k+1]++ <= occtbl[k+1]) { - output_report_one_field (r,f,pos,pos+occtbl[k+1]-1); + output_report_one_field (r, f, pos, pos + occtbl[k+1] - 1); pos += occtbl[k+1]; max += occtbl[k+1]; } } } else { - output_report_one_field (r,f,idx,occ); + output_report_one_field (r, f, idx, occ); } - } static void @@ -10947,22 +11055,22 @@ output_report_define_lines (int top, struct cb_report *r, struct cb_field *f, in n = f->sister; c = f->children; if (n - && n->storage != CB_STORAGE_REPORT) + && n->storage != CB_STORAGE_REPORT) n = NULL; if (n - && n->report != r) + && n->report != r) n = NULL; if (c - && c->storage != CB_STORAGE_REPORT) + && c->storage != CB_STORAGE_REPORT) c = NULL; if (n - && (n->report_flag & COB_REPORT_LINE)) { + && (n->report_flag & COB_REPORT_LINE)) { output_report_define_lines(top, r, n, 0); } if (c - && (c->report_flag & COB_REPORT_LINE)) { + && (c->report_flag & COB_REPORT_LINE)) { if (c->flag_occurs - && !chk_field_variable_size (c)) { + && !chk_field_variable_size (c)) { int x; for (x = 1; x <= c->occurs_max; x++) { c->report_flag &= ~COB_REPORT_LINE_EMITTED; @@ -10982,64 +11090,64 @@ output_report_define_lines (int top, struct cb_report *r, struct cb_field *f, in f->report_flag |= COB_REPORT_LINE_EMITTED; if (f->report_flag & COB_REPORT_PAGE_HEADING) { - strcpy(fname,"PAGE HEADING"); + strcpy (fname," PAGE HEADING"); } else if (f->report_flag & COB_REPORT_PAGE_FOOTING) { - strcpy(fname,"PAGE HEADING"); + strcpy (fname, "PAGE HEADING"); } else if (f->report_flag & COB_REPORT_HEADING) { - strcpy(fname,"REPORT HEADING"); + strcpy (fname, "REPORT HEADING"); } else if (f->report_flag & COB_REPORT_FOOTING) { - strcpy(fname,"REPORT FOOTING"); + strcpy (fname, "REPORT FOOTING"); } else if (f->report_flag & COB_REPORT_CONTROL_HEADING) { - strcpy(fname,"CONTROL HEADING"); + strcpy (fname, "CONTROL HEADING"); } else if (f->report_flag & COB_REPORT_CONTROL_FOOTING) { - strcpy(fname,"CONTROL FOOTING"); + strcpy (fname, "CONTROL FOOTING"); } else if (f->report_flag & COB_REPORT_CONTROL_FOOTING_FINAL) { - strcpy(fname,"CONTROL FOOTING FINAL"); + strcpy (fname, "CONTROL FOOTING FINAL"); } else if (f->report_flag & COB_REPORT_CONTROL_HEADING_FINAL) { - strcpy(fname,"CONTROL HEADING FINAL"); + strcpy (fname, "CONTROL HEADING FINAL"); } else { - sprintf(fname,"Line %d",f->common.source_line); + sprintf (fname, "Line %d", f->common.source_line); } if (f->children) - strcat (fname," GROUP"); + strcat (fname, " GROUP"); if (f->report_control) { - sprintf(&fname[strlen(fname)], " %s", - cb_code_field(f->report_control)->name); + sprintf(&fname[strlen (fname)], " %s", + cb_code_field (f->report_control)->name); } - if (memcmp (f->name, "FILLER ",7) == 0 + if (memcmp (f->name, "FILLER ", 7) == 0 || f->flag_filler) { strcat (fname, " of "); } else { strcat (fname, " "); - strcat (fname,f->name); + strcat (fname, f->name); strcat (fname, " of "); } - output_local("\n/* %s%s ",fname,r->name); + output_local ("\n/* %s%s ", fname, r->name); if (f->report_source_id) { - output_local("SourceId:%d ",f->report_source_id); + output_local ("SourceId:%d ", f->report_source_id); } if ((f->report_flag & COB_REPORT_LINE) && f->children && (f->children->report_flag & COB_REPORT_LINE)) { printf("Warning: Ignoring nested LINE %s %d\n", - (f->report_flag & COB_REPORT_LINE_PLUS)?"PLUS":"", + (f->report_flag & COB_REPORT_LINE_PLUS) ? "PLUS" : "", f->report_line); f->report_line = 0; f->report_flag &= ~COB_REPORT_LINE_PLUS; f->report_flag &= ~COB_REPORT_LINE; } if (f->report_flag & COB_REPORT_LINE) - output_local("LINE %s %d ", - (f->report_flag & COB_REPORT_LINE_PLUS)?"PLUS":"", + output_local ("LINE %s %d ", + (f->report_flag & COB_REPORT_LINE_PLUS) ? "PLUS" : "", f->report_line); - output_local("*/\n"); + output_local ("*/\n"); strcpy (report_field_name, "NULL"); if ((f->report_flag & COB_REPORT_LINE) && f->children != NULL) { - output_report_def_fields (1,f->id,f->children,r); + output_report_def_fields (1, f->id, f->children, r); } else if (f->children == NULL) { if (f->report_flag & COB_REPORT_LINE) { - output_report_def_fields (1,f->id,f,r); + output_report_def_fields (1, f->id, f, r); } } if (f->report_decl_id @@ -11061,32 +11169,32 @@ output_report_define_lines (int top, struct cb_report *r, struct cb_field *f, in } } } - output_local ("static cob_report_line %s%d\t= {", CB_PREFIX_REPORT_LINE,f->id); + output_local ("static cob_report_line %s%d\t= {", CB_PREFIX_REPORT_LINE, f->id); if (n == NULL) { - output_local("NULL,"); + output_local ("NULL,"); } else if (n->level > 1 && !(n->report_flag & COB_REPORT_LINE)) { - output_local("NULL, "); + output_local ("NULL, "); } else { - output_local("&%s%d,",CB_PREFIX_REPORT_LINE,n->id); + output_local ("&%s%d,", CB_PREFIX_REPORT_LINE, n->id); } if (c == NULL) - output_local("NULL,"); + output_local ("NULL,"); else - output_local("&%s%d,",CB_PREFIX_REPORT_LINE,c->id); - output_local("%s,",report_field_name); + output_local ("&%s%d,", CB_PREFIX_REPORT_LINE, c->id); + output_local ("%s,", report_field_name); if (f->report_control) { output_param (f->report_control, 0); } else { - output_local("NULL"); + output_local ("NULL"); } - output_local(",&%s%d",CB_PREFIX_FIELD, f->id); - output_local(",%d",f->report_decl_id); - output_local(",0x%X,%d,%d,%d",f->report_flag&~COB_REPORT_EMITTED, - f->report_line, f->step_count,f->next_group_line); - output_local(",0x%X,0",f->report_flag&~COB_REPORT_EMITTED); - output_local(", %d",f->report_source_id); - output_local(",%5d",f->common.source_line); + output_local (",&%s%d", CB_PREFIX_FIELD, f->id); + output_local (",%d", f->report_decl_id); + output_local (",0x%X,%d,%d,%d",f->report_flag&~COB_REPORT_EMITTED, + f->report_line, f->step_count, f->next_group_line); + output_local (",0x%X,0", f->report_flag&~COB_REPORT_EMITTED); + output_local (", %d", f->report_source_id); + output_local (",%5d", f->common.source_line); output_local ("};\n"); } @@ -11132,10 +11240,10 @@ output_report_sum_counters (const int top, struct cb_field *f, struct cb_report && c->storage != CB_STORAGE_REPORT) c = NULL; if (n) { - output_report_sum_counters(top, n, r); + output_report_sum_counters (top, n, r); } if (c) { - output_report_sum_counters(0, c, r); + output_report_sum_counters (0, c, r); } if (!top) { c = NULL; @@ -11149,53 +11257,53 @@ output_report_sum_counters (const int top, struct cb_field *f, struct cb_report if (f->flag_filler) { if (f->report_flag & COB_REPORT_PAGE_HEADING) { - strcpy(fname,"PAGE HEADING"); + strcpy (fname, "PAGE HEADING"); } else if (f->report_flag & COB_REPORT_PAGE_FOOTING) { - strcpy(fname,"PAGE HEADING"); + strcpy (fname, "PAGE HEADING"); } else if (f->report_flag & COB_REPORT_CONTROL_HEADING) { - strcpy(fname,"CONTROL HEADING"); + strcpy (fname, "CONTROL HEADING"); } else if (f->report_flag & COB_REPORT_CONTROL_FOOTING) { - strcpy(fname,"CONTROL FOOTING"); + strcpy (fname, "CONTROL FOOTING"); } else if (f->report_flag & COB_REPORT_CONTROL_FOOTING_FINAL) { - strcpy(fname,"CONTROL FOOTING FINAL"); + strcpy (fname, "CONTROL FOOTING FINAL"); } else if (f->report_flag & COB_REPORT_CONTROL_HEADING_FINAL) { - strcpy(fname,"CONTROL HEADING FINAL"); + strcpy (fname, "CONTROL HEADING FINAL"); } else { - strcpy(fname,""); + strcpy (fname, ""); } if (f->report_control) { - sprintf(&fname[strlen(fname)]," %s",cb_code_field(f->report_control)->name); + sprintf (&fname[strlen (fname)], " %s", cb_code_field (f->report_control)->name); } - } else if (memcmp (f->name, "FILLER ",7) == 0) { - sprintf(fname,"Source %d",f->common.source_line); + } else if (memcmp (f->name, "FILLER ", 7) == 0) { + sprintf (fname, "Source %d", f->common.source_line); } else { - sprintf(fname,"%s",f->name); + sprintf (fname, "%s", f->name); } - output_local("\n/* %s SUM ",fname); + output_local ("\n/* %s SUM ", fname); for (l = f->report_sum_list; l; l = CB_CHAIN (l)) { x = CB_VALUE (l); if (CB_REF_OR_FIELD_P (x)) { - output_local("%s ",cb_code_field(x)->name); + output_local ("%s ", cb_code_field(x)->name); } else if (CB_NUMERIC_LITERAL_P (x)) { - output_local("%s ",cb_name (x)); + output_local ("%s ", cb_name (x)); } else if (CB_BINARY_OP_P (x)) { - output_local("%s ",cb_name (x)); + output_local ("%s ", cb_name (x)); } } if (f->report_flag & COB_REPORT_RESET_FINAL) - output_local(" RESET ON FINAL "); + output_local (" RESET ON FINAL "); if (f->report_reset) { - output_local(" RESET ON %s ",cb_code_field(f->report_reset)->name); + output_local (" RESET ON %s ", cb_code_field (f->report_reset)->name); } - output_local("*/\n"); + output_local ("*/\n"); ctl_foot = sub_ttl = cross_foot = computed = 0; x = NULL; z = NULL; x = CB_VALUE (f->report_sum_list); if (CB_REF_OR_FIELD_P (x)) { - z = get_sum_data_field(r, cb_code_field(x)); + z = get_sum_data_field (r, cb_code_field (x)); if (z) { sub_ttl = 1; } @@ -11207,53 +11315,53 @@ output_report_sum_counters (const int top, struct cb_field *f, struct cb_report } } - output_local ("static cob_report_sum_ctr %s%d = {", CB_PREFIX_REPORT_SUM_CTR,++sum_nxt); + output_local ("static cob_report_sum_ctr %s%d = {", CB_PREFIX_REPORT_SUM_CTR, ++sum_nxt); if (sum_prv) { - output_local("&%s%d,",CB_PREFIX_REPORT_SUM_CTR,sum_prv); + output_local ("&%s%d,", CB_PREFIX_REPORT_SUM_CTR, sum_prv); } else { - output_local("NULL,"); + output_local ("NULL,"); } - output_local ("\"%s\",",fname); + output_local ("\"%s\",", fname); if (CB_LITERAL_P (x)) { output ("(cob_field *)&%s%d,", CB_PREFIX_CONST, cb_lookup_literal (x, 0)); } else if (x) { - output_local("&%s%d,",CB_PREFIX_FIELD, cb_code_field(x)->id); + output_local ("&%s%d,", CB_PREFIX_FIELD, cb_code_field(x)->id); } else { - output_local("/* NO SUM! */NULL,"); + output_local ("/* NO SUM! */NULL,"); } if (f->report_sum_counter) { - output_local("&%s%d,",CB_PREFIX_FIELD, cb_code_field(f->report_sum_counter)->id); - z = get_sum_data_field(r, cb_code_field(f->report_sum_counter)); + output_local ("&%s%d,",CB_PREFIX_FIELD, cb_code_field (f->report_sum_counter)->id); + z = get_sum_data_field (r, cb_code_field (f->report_sum_counter)); } else { - output_local("NULL,"); + output_local ("NULL,"); z = NULL; } if (z) { - output_local("&%s%d,",CB_PREFIX_FIELD, z->id); + output_local ("&%s%d,", CB_PREFIX_FIELD, z->id); } else { - output_local("NULL,"); + output_local ("NULL,"); } for (p = f; p; p = p->parent) { if (p->report_control) { - output_local("&%s%d_%d,", - CB_PREFIX_REPORT_CONTROL, r_ctl_id, cb_code_field(p->report_control)->id); + output_local ("&%s%d_%d,", + CB_PREFIX_REPORT_CONTROL, r_ctl_id, cb_code_field (p->report_control)->id); break; } else if (p->report_flag & COB_REPORT_CONTROL_FOOTING_FINAL) { ctl_foot = 1; - output_local("NULL,"); + output_local ("NULL,"); break; } } if (p == NULL) { - output_local("NULL,"); + output_local ("NULL,"); } if (f && f->report_flag & COB_REPORT_RESET_FINAL) { - output_local("1"); + output_local ("1"); } else { - output_local("0"); + output_local ("0"); } - output_local(",%d,%d,%d,%d",ctl_foot,sub_ttl,cross_foot,computed); + output_local (",%d,%d,%d,%d", ctl_foot, sub_ttl, cross_foot, computed); output_local ("};\n"); sum_prv = sum_nxt; } @@ -11265,31 +11373,31 @@ output_report_definition (struct cb_report *p, struct cb_report *n) struct cb_field *s = NULL; cb_tree l; - output_local("\n"); - for(i= p->num_lines-1; i >= 0; i--) { + output_local ("\n"); + for (i= p->num_lines - 1; i >= 0; i--) { if (p->line_ids[i]->level == 1) - output_report_define_lines(1,p,p->line_ids[i], 0); + output_report_define_lines (1, p, p->line_ids[i], 0); } output_local ("\n"); if (p->controls) { for (l = p->controls; l; l = CB_CHAIN (l)) { - s = cb_code_field(l); + s = cb_code_field (l); s->count++; } - output_report_control(p,++r_ctl_id,p->controls,CB_CHAIN(p->controls)); + output_report_control (p, ++r_ctl_id, p->controls, CB_CHAIN (p->controls)); output_local ("\n"); } sum_prv = 0; - for (i= p->num_lines-1; i >= 0; i--) { + for (i= p->num_lines - 1; i >= 0; i--) { if (p->line_ids[i]->level == 1) { output_report_sum_counters (1, p->line_ids[i], p); } } output_local ("\n"); - output_local ("static cob_report %s%s = {0x%X,\t", + output_local ("static cob_report %s%s = {0x%X,\t", CB_PREFIX_REPORT, p->cname, COB_REPORT_VERSION); - output_local ("\"%s\",\n\t\t",p->name); + output_local ("\"%s\",\n\t\t", p->name); if (n != NULL) { output_local ("&%s%s,", CB_PREFIX_REPORT, n->cname); /* next report */ } else { @@ -11301,47 +11409,47 @@ output_report_definition (struct cb_report *p, struct cb_report *n) output_param (p->page_counter, 0); output_local (","); } else { - output_local("NULL,"); + output_local ("NULL,"); } if (p->line_counter) { output_param (p->line_counter, 0); output_local (","); } else { - output_local("NULL,"); + output_local ("NULL,"); } if (p->num_lines > 0) { - output_local ("&%s%d,",CB_PREFIX_REPORT_LINE,p->line_ids[0]->id); + output_local ("&%s%d,", CB_PREFIX_REPORT_LINE, p->line_ids[0]->id); } else { - output_local("NULL,"); + output_local ("NULL,"); } if (p->t_heading_final != NULL) { - output_local ("&%s%d,",CB_PREFIX_REPORT_LINE,p->t_heading_final->id); + output_local ("&%s%d,", CB_PREFIX_REPORT_LINE, p->t_heading_final->id); } else { - output_local("NULL,"); + output_local ("NULL,"); } if (p->t_footing_final != NULL) { - output_local ("&%s%d,",CB_PREFIX_REPORT_LINE,p->t_footing_final->id); + output_local ("&%s%d,", CB_PREFIX_REPORT_LINE, p->t_footing_final->id); } else { - output_local("NULL,"); + output_local ("NULL,"); } if (p->controls) { s = cb_code_field(p->controls); - output_local ("&%s%d_%d,",CB_PREFIX_REPORT_CONTROL,r_ctl_id,s->id); + output_local ("&%s%d_%d,", CB_PREFIX_REPORT_CONTROL, r_ctl_id, s->id); } else { - output_local("NULL,"); + output_local ("NULL,"); } if (sum_prv > 0) { - output_local("&%s%d,",CB_PREFIX_REPORT_SUM_CTR,sum_prv); + output_local ("&%s%d,", CB_PREFIX_REPORT_SUM_CTR, sum_prv); } else { - output_local("NULL,"); + output_local ("NULL,"); } - output_local (" %d,\n",p->sum_exec); + output_local (" %d,\n", p->sum_exec); output_local ("\t\t%d,%d,%d,%d,%d,%d,%d,\n", - p->lines,p->columns,p->heading, - p->first_detail,p->last_control, - p->last_detail,p->footing); + p->lines, p->columns, p->heading, + p->first_detail, p->last_control, + p->last_detail, p->footing); output_local ("\t\t0,0,0,0,0,"); - output_local ("%d,%d\n",p->control_final,p->global); + output_local ("%d,%d\n", p->control_final, p->global); output_local ("};\n"); } @@ -11376,7 +11484,7 @@ static void output_report_init (struct cb_report *rep) { output_prefix (); - output ("cob_set_report (&%s%s, ", CB_PREFIX_REPORT,rep->cname); + output ("cob_set_report (&%s%s, ", CB_PREFIX_REPORT, rep->cname); if (rep->file) { output ("%s%s", CB_PREFIX_FILE, rep->file->cname); @@ -11470,7 +11578,7 @@ output_report_move_sums (struct cb_field *f, int first) for (l = f->report_sum_list; l; l = CB_CHAIN (l)) { x = CB_VALUE (l); if (CB_BINARY_OP_P (x)) { - output_line ("/* Compute %s */",cb_name (x)); + output_line ("/* Compute %s */", cb_name (x)); output_prefix (); output ("cob_move ("); output_param (x, -1); @@ -11509,22 +11617,22 @@ output_report_move_source (struct cb_field *f, int first) vry = CB_VARY (CB_VALUE (l)); var = cb_code_field (vry->var); rpt_idx[report_nest_vary] = var; - output ("%s%d = ",CB_PREFIX_BASE,var->id); + output ("%s%d = ", CB_PREFIX_BASE,var->id); if (vry->from) { output_integer (vry->from); } else { output ("1"); } output (";\t\t"); - output ("/* VARYING %s ",var->name); - output ("(%s%d) ",CB_PREFIX_BASE,var->id); + output ("/* VARYING %s ", var->name); + output ("(%s%d) ", CB_PREFIX_BASE, var->id); if (vry->from) { - output ("FROM %s ",cb_name (vry->from)); + output ("FROM %s ", cb_name (vry->from)); } else { output ("FROM 1 "); } if (vry->by) { - output ("BY %s ",cb_name (vry->by)); + output ("BY %s ", cb_name (vry->by)); } else { output ("BY 1 "); } @@ -11532,17 +11640,17 @@ output_report_move_source (struct cb_field *f, int first) output_newline (); } output_prefix (); - output ("for (ix_%d = 1; ix_%d <= ",f->id,f->id); + output ("for (ix_%d = 1; ix_%d <= ", f->id, f->id); if (f->depending) output_integer (f->depending); else - output ("%d",f->occurs_max); + output ("%d", f->occurs_max); output ("; ix_%d++",f->id); for (l = f->report_vary_list; l; l = CB_CHAIN (l)) { output (", "); vry = CB_VARY (CB_VALUE (l)); var = cb_code_field (vry->var); - output ("%s%d += ",CB_PREFIX_BASE,var->id); + output ("%s%d += ", CB_PREFIX_BASE, var->id); if (vry->by) { output_integer (vry->by); } else { @@ -11625,11 +11733,11 @@ output_report_source_move (struct cb_report *rep) if (f->report_source_id) { rep->has_source_move = 1; if (first) { - output_line ("/* Set SOURCE values for report %s */",rep->cname); + output_line ("/* Set SOURCE values for report %s */", rep->cname); output_indent_level = 0; output_line ("rw_src_%d: ",rep->id); output_indent_level = 4; - output_line ("switch (%s%s.exec_source)",CB_PREFIX_REPORT,rep->cname); + output_line ("switch (%s%s.exec_source)", CB_PREFIX_REPORT, rep->cname); output_block_open (); first = 0; } @@ -11662,16 +11770,16 @@ output_report_source_move (struct cb_report *rep) /* Nothing really needed but emit label and return code */ rep->has_source_move = 0; output_indent_level = 0; - output_line (" /* No SOURCE to handle for %s */",rep->cname); - output_line ("rw_src_%d: ",rep->id); + output_line (" /* No SOURCE to handle for %s */", rep->cname); + output_line ("rw_src_%d: ", rep->id); } else { /* Finish off switch */ output_line ("default:"); output_line (" break;"); output_block_close (); output_line ("%s%s.exec_source = -%s%s.exec_source;", - CB_PREFIX_REPORT,rep->cname, - CB_PREFIX_REPORT,rep->cname); + CB_PREFIX_REPORT, rep->cname, + CB_PREFIX_REPORT, rep->cname); } output_indent_level = 4; if (!cb_flag_computed_goto) { @@ -11820,8 +11928,16 @@ output_initial_values (struct cb_field *f) if (p->flag_no_init && !p->count) { continue; } + /* note: the initial value of INDEXED BY items is undefined per standard, + but earlier versions always set this explict to 1 on first entry; + we now make this depending on its value, set depending on cb_init_indexed_by + and on cb_implicit_init */ + if (p->flag_indexed_by && cb_default_byte == CB_DEFAULT_BYTE_NONE) { + continue; + } x = cb_build_field_reference (p, NULL); - output_stmt (cb_build_initialize (x, cb_true, NULL, 1, 0, 0)); + output_line ("/* initialize field %s */", f->name); + output_stmt (cb_build_initialize (x, cb_true, NULL, 1, STMT_INIT_STORAGE, 0)); output_newline (); } } @@ -12135,7 +12251,7 @@ setup_param (cb_tree l, int *is_value_parm, int *is_any_numeric) if (!f->flag_field) { force_cache (f); } - + return f; } @@ -12701,7 +12817,6 @@ output_internal_function (struct cb_program *prog, cb_tree parameter_list) output_line ("module->module_symbols = NULL;"); } - output_line ("/* Set frame stack pointer */"); if (cb_flag_stack_on_heap || prog->flag_recursive) { const char *frame_type = (cb_flag_stack_extended) ? "cob_frame_ext" : "cob_frame"; if (prog->flag_recursive && cb_stack_size == 255) { @@ -12709,10 +12824,12 @@ output_internal_function (struct cb_program *prog, cb_tree parameter_list) } else { i = cb_stack_size; } + output_line ("/* Set recursive frame stack pointer */"); output_line ("frame_stack = cob_malloc (%dU * sizeof(struct %s));", i, frame_type); output_line ("frame_ptr = frame_stack;"); } else { + output_line ("/* Set frame stack pointer */"); output_line ("frame_ptr = frame_stack;"); output_line ("frame_ptr->perform_through = 0;"); if (cb_flag_computed_goto) { @@ -13249,10 +13366,17 @@ output_internal_function (struct cb_program *prog, cb_tree parameter_list) output_newline (); /* Check matching version */ - if (!prog->nested_level) { +#if !defined (HAVE_ATTRIBUTE_CONSTRUCTOR) +#ifdef _WIN32 + if (prog->flag_main) /* otherwise we generate that in DllMain*/ +#else + if (!prog->nested_level) +#endif + { output_line ("cob_check_version (COB_SOURCE_FILE, COB_PACKAGE_VERSION, COB_PATCH_LEVEL);"); output_newline (); } +#endif /* Resolve user functions */ for (clp = func_call_cache; clp; clp = clp->next) { @@ -13281,6 +13405,7 @@ output_internal_function (struct cb_program *prog, cb_tree parameter_list) for (l = prog->file_list; l; l = CB_CHAIN (l)) { f = CB_FILE (CB_VALUE (l))->record; if (f->flag_external) { + char string_buffer[COB_MINI_BUFF]; strcpy (string_buffer, f->name); for (p = string_buffer; *p; p++) { if (*p == '-' || *p == ' ') { @@ -13341,7 +13466,7 @@ output_internal_function (struct cb_program *prog, cb_tree parameter_list) } output_line ("%s%d = &%s%d;", CB_PREFIX_DEC_CONST, m->id, CB_PREFIX_DEC_FIELD, m->id); - output_line ("cob_decimal_init(%s%d);", CB_PREFIX_DEC_CONST, m->id); + output_line ("cob_decimal_init (%s%d);", CB_PREFIX_DEC_CONST, m->id); output_line ("cob_decimal_set_field (%s%d, (cob_field *)&%s%d);", CB_PREFIX_DEC_CONST, m->id, CB_PREFIX_CONST, m->id); @@ -13365,6 +13490,8 @@ output_internal_function (struct cb_program *prog, cb_tree parameter_list) output_line ("/* Initialize SCREEN items */"); /* Initialize items with VALUE */ output_initial_values (prog->screen_storage); + /* output structure, note: this can be quite complex + and nested, therefore this isn't done in the header */ output_screen_init (prog->screen_storage, NULL); output_newline (); } @@ -13675,7 +13802,7 @@ output_function_entry_function (struct cb_program *prog, cb_tree entry, output (");"); output_newline (); #if 0 /* TODO for 4.0: set the attributes from the field given outside on the stack */ - output_line ("COB_SET_FLD((*cob_fret), ret_fld->size, ret_fld, ret_fld->attr);"); + output_line ("COB_SET_FLD ((*cob_fret), ret_fld->size, ret_fld, ret_fld->attr);"); #else output_line ("if (floc->ret_fld != NULL) {"); output_line (" **cob_fret = *floc->ret_fld;"); @@ -13777,9 +13904,9 @@ static void output_entry_function (struct cb_program *prog, cb_tree entry, cb_tree parameter_list, const int gencode) { - const char *entry_name; - cb_tree using_list; - cb_tree l; + const char *entry_name = CB_LABEL (CB_PURPOSE (entry))->name; + cb_tree using_list = CB_VALUE (CB_VALUE (entry)); + cb_tree l = CB_PURPOSE (CB_VALUE (entry)); /* entry convention */ cb_tree l1; cb_tree l2; struct cb_field *f; @@ -13795,11 +13922,6 @@ output_entry_function (struct cb_program *prog, cb_tree entry, int sticky_nonp[MAX_CALL_FIELD_PARAMS] = { 0 }; int entry_convention = 0; - entry_name = CB_LABEL (CB_PURPOSE (entry))->name; - using_list = CB_VALUE (CB_VALUE (entry)); - - /* entry convention */ - l = CB_PURPOSE (CB_VALUE (entry)); /* LCOV_EXCL_START */ if (!l || !(CB_INTEGER_P (l) || CB_NUMERIC_LITERAL_P (l))) { /* not translated as it is a highly unlikely internal abort */ @@ -13807,6 +13929,7 @@ output_entry_function (struct cb_program *prog, cb_tree entry, COBC_ABORT (); } /* LCOV_EXCL_STOP */ + if (CB_INTEGER_P (l)) { entry_convention = CB_INTEGER (l)->val; } else if (CB_NUMERIC_LITERAL_P (l)) { @@ -13816,18 +13939,16 @@ output_entry_function (struct cb_program *prog, cb_tree entry, if (gencode) { output_line ("/* ENTRY '%s' */", entry_name); output_newline (); -#if (defined(_WIN32) || defined(__CYGWIN__)) && !defined(__clang__) } else { if (!prog->nested_level) { - output ("__declspec(dllexport) "); + output ("COB_EXT_EXPORT "); } -#endif } /* Output return type. */ - if ((prog->nested_level && !prog->flag_void) - || (prog->flag_main && !prog->flag_recursive - && !strcmp(prog->program_id, entry_name))) { + if ( (prog->nested_level && !prog->flag_void) + || (prog->flag_main && !prog->flag_recursive + && !strcmp (prog->program_id, entry_name))) { output ("static "); } if (prog->flag_void) { @@ -13886,7 +14007,6 @@ output_entry_function (struct cb_program *prog, cb_tree entry, } } - /* We have to cater for sticky-linkage here at the entry point site. Doing it in the internal function is too late as we then do not @@ -14157,7 +14277,7 @@ output_function_prototypes (struct cb_program *prog) may use the same but not-default function */ if (strcmp (prog->extfh, extfh_value) != 0 && strcmp ("EXTFH", extfh_value) != 0) { - output_line ("extern int %s (unsigned char *opcode, FCD3 *fcd);", + output_line ("COB_EXT_IMPORT int %s (unsigned char *opcode, FCD3 *fcd);", extfh_value); } } @@ -14178,7 +14298,7 @@ output_function_prototypes (struct cb_program *prog) /* prototype for general EXTFH function */ if (prog->file_list && prog->extfh && strcmp ("EXTFH", prog->extfh) != 0) { - output ("extern int %s (unsigned char *opcode, FCD3 *fcd);", prog->extfh); + output ("COB_EXT_IMPORT int %s (unsigned char *opcode, FCD3 *fcd);", prog->extfh); output_newline (); } @@ -14268,31 +14388,30 @@ emit_base_symbols (struct cb_program *prog) void codegen (struct cb_program *prog, const char *translate_name) { + const int set_xref = cb_listing_xref; int subsequent_call = 0; codegen_init (prog, translate_name); + /* Temporarily disable cross-reference during C generation */ + cb_listing_xref = 0; + for (;;) { - /* Temporarily disable cross-reference during C generation */ - if (cb_listing_xref) { - cb_listing_xref = 0; - codegen_internal (current_program, subsequent_call); - cb_listing_xref = 1; - } else { - codegen_internal (current_program, subsequent_call); - } + codegen_internal (current_program, subsequent_call); if (!current_program->next_program) { break; } - if (current_program->flag_file_global && current_program->next_program->nested_level) { + subsequent_call = 1; + if (current_program->flag_file_global + && current_program->next_program->nested_level) { has_global_file = 1; } else { has_global_file = 0; } current_program = current_program->next_program; - subsequent_call = 1; } current_program = prog; + cb_listing_xref = set_xref; codegen_finalize (); } @@ -14300,6 +14419,8 @@ codegen (struct cb_program *prog, const char *translate_name) void codegen_init (struct cb_program *prog, const char *translate_name) { + char timestamp_buffer[COB_MINI_BUFF]; + current_program = prog; current_section = NULL; current_paragraph = NULL; @@ -14308,6 +14429,7 @@ codegen_init (struct cb_program *prog, const char *translate_name) output_line_number = 1; output_name = (char*)translate_name; + /* escape output name for C string */ if (strchr (output_name, '\\')) { char buff[COB_MEDIUM_BUFF]; int pos = 0; @@ -14342,32 +14464,27 @@ codegen_init (struct cb_program *prog, const char *translate_name) } } - if (!string_buffer) { - string_buffer = cobc_main_malloc ((size_t)COB_MINI_BUFF); - } - - strftime (string_buffer, (size_t)COB_MINI_MAX, + strftime (timestamp_buffer, (size_t)COB_MINI_MAX, "%b %d %Y %H:%M:%S", ¤t_compile_tm); output_target = yyout; - output_header (string_buffer, NULL); + output_header (timestamp_buffer, NULL); output_target = cb_storage_file; - output_header (string_buffer, NULL); + output_header (timestamp_buffer, NULL); { - struct cb_program* cp; + struct cb_program *cp; for (cp = prog; cp; cp = cp->next_program) { if (cp->flag_prototype) { continue; } output_target = cp->local_include->local_fp; - output_header (string_buffer, cp); + output_header (timestamp_buffer, cp); } } output_target = yyout; output_standard_includes (prog); - /* string_buffer has formatted date from above */ - output_gnucobol_defines (string_buffer); + output_gnucobol_defines (timestamp_buffer); output_newline (); #if defined(HAVE_SIGACTION) && !defined(_WIN32) @@ -14388,6 +14505,31 @@ codegen_init (struct cb_program *prog, const char *translate_name) output_function_prototypes (prog); } +/* Check matching version via constructor attribute / DllMain */ +static void output_so_load_version_check (struct cb_program *prog) +{ +#if defined (HAVE_ATTRIBUTE_CONSTRUCTOR) + output_line ("static void gc_module_so_init () __attribute__ ((constructor));"); + output_line ("static void gc_module_so_init ()"); + output_block_open (); + output_line ("cob_check_version (COB_SOURCE_FILE, COB_PACKAGE_VERSION, COB_PATCH_LEVEL);"); + output_block_close (); + output_newline (); +#elif defined (_WIN32) + if (!prog->flag_main) { + output_line ("#include \"windows.h\""); + output_line ("BOOL WINAPI DllMain (HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved);"); + output_line ("BOOL WINAPI DllMain (HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)"); + output_block_open (); + output_line ("if (fdwReason == DLL_PROCESS_ATTACH)"); + output_line ("\tcob_check_version (COB_SOURCE_FILE, COB_PACKAGE_VERSION, COB_PATCH_LEVEL);"); + output_line ("return TRUE;"); + output_block_close (); + output_newline (); + } +#endif +} + void codegen_internal (struct cb_program *prog, const int subsequent_call) { @@ -14452,6 +14594,7 @@ codegen_internal (struct cb_program *prog, const int subsequent_call) output ("/* Functions */"); output_newline (); output_newline (); + output_so_load_version_check (prog); } if (prog->prog_type == COB_MODULE_TYPE_FUNCTION) { diff --git a/cobc/codeoptim.c b/cobc/codeoptim.c index c1528a2dc..16cac1e50 100644 --- a/cobc/codeoptim.c +++ b/cobc/codeoptim.c @@ -56,29 +56,22 @@ cob_gen_optim (const enum cb_optim val) switch (val) { case COB_SET_SCREEN: - output_storage ("static void COB_NOINLINE"); - output_storage ("cob_set_screen (cob_screen *s, cob_screen *next,"); - output_storage (" cob_screen *prev, cob_screen *child, cob_screen *parent,"); - output_storage (" cob_field *field, cob_field *value,"); - output_storage (" cob_field *line, cob_field *column,"); - output_storage (" cob_field *foreg, cob_field *backg, cob_field *prompt,"); - output_storage (" const int type, const int occurs, const int attr)"); - output_storage ("{"); - output_storage (" s->next = next;"); - output_storage (" s->prev = prev;"); - output_storage (" s->child = child;"); - output_storage (" s->parent = parent;"); - output_storage (" s->field = field;"); - output_storage (" s->value = value;"); - output_storage (" s->line = line;"); - output_storage (" s->column = column;"); - output_storage (" s->foreg = foreg;"); - output_storage (" s->backg = backg;"); - output_storage (" s->prompt = prompt;"); - output_storage (" s->type = type;"); - output_storage (" s->occurs = occurs;"); - output_storage (" s->attr = attr;"); - output_storage ("}"); + output_storage ("#define COB_SET_SCREEN(s,typ,att,nxt,prv,chld,p,fld,val,l,c,fg,bg,prmpt,occ) \\"); + output_storage ("do{ s.next = nxt; \\"); + output_storage (" s.prev = prv; \\"); + output_storage (" s.child = chld; \\"); + output_storage (" s.parent = p; \\"); + output_storage (" s.field = fld; \\"); + output_storage (" s.value = val; \\"); + output_storage (" s.line = l; \\"); + output_storage (" s.column = c; \\"); + output_storage (" s.foreg = fg; \\"); + output_storage (" s.backg = bg; \\"); + output_storage (" s.prompt = prmpt; \\"); + output_storage (" s.type = typ; \\"); + output_storage (" s.occurs = occ; \\"); + output_storage (" s.attr = att; \\"); + output_storage ("} ONCE_COB"); return; case COB_SET_REPORT: @@ -314,6 +307,7 @@ cob_gen_optim (const enum cb_optim val) output_storage ("}"); return; +#if 0 /* libcob's optimized version is not slower, so drop that */ case COB_CMP_PACKED_INT: output_storage ("static int COB_NOINLINE"); output_storage ("cob_cmp_packed_int (const cob_field *f, const cob_s64_t n)"); @@ -328,8 +322,8 @@ cob_gen_optim (const enum cb_optim val) output_storage (" val = val * 10"); output_storage (" + (*p++ & 0x0f);"); output_storage (" }"); - output_storage (" val *= 10;"); - output_storage (" val += *p >> 4;"); + output_storage (" val = val * 10"); + output_storage (" + (*p >> 4);"); output_storage (" if ((*p & 0x0f) == 0x0d) {"); output_storage (" val = -val;"); output_storage (" }"); @@ -351,8 +345,8 @@ cob_gen_optim (const enum cb_optim val) output_storage (" val = val * 10"); output_storage (" + (*p++ & 0x0f);"); output_storage (" }"); - output_storage (" val *= 10;"); - output_storage (" val += *p >> 4;"); + output_storage (" val = val * 10"); + output_storage (" + (*p >> 4);"); output_storage (" if ((*p & 0x0f) == 0x0d) {"); output_storage (" val = -val;"); output_storage (" }"); @@ -360,6 +354,30 @@ cob_gen_optim (const enum cb_optim val) output_storage ("}"); return; + case COB_GET_PACKED_INT64: + output_storage ("static cob_s64_t COB_NOINLINE"); + output_storage ("cob_get_packed_int64 (const cob_field *f)"); + output_storage ("{"); + output_storage (" register unsigned char *p = f->data;"); + output_storage (" const register unsigned char *p_end = p + f->size - 1;"); + output_storage (" register cob_s64_t val = 0;"); + + output_storage (" while (p < p_end) {"); + output_storage (" val = val * 10"); + output_storage (" + (*p >> 4);"); + output_storage (" val = val * 10"); + output_storage (" + (*p++ & 0x0f);"); + output_storage (" }"); + output_storage (" val = val * 10"); + output_storage (" + (*p >> 4);"); + output_storage (" if ((*p & 0x0f) == 0x0d) {"); + output_storage (" val = -val;"); + output_storage (" }"); + output_storage (" return val;"); + output_storage ("}"); + return; +#endif + case COB_ADD_PACKED_INT: output_storage ("static int COB_NOINLINE"); output_storage ("cob_add_packed_int (cob_field *f, const int val)"); @@ -405,6 +423,51 @@ cob_gen_optim (const enum cb_optim val) output_storage ("}"); return; + case COB_ADD_PACKED_INT64: + output_storage ("static int COB_NOINLINE"); + output_storage ("cob_add_packed_int64 (cob_field *f, const cob_s64_t val)"); + output_storage ("{"); + output_storage (" register unsigned char *p;"); + output_storage (" size_t size;"); + output_storage (" cob_s64_t carry = 0;"); + output_storage (" cob_s64_t n;"); + output_storage (" cob_s64_t inc;"); + + output_storage (" if (val == 0) {"); + output_storage (" return 0;"); + output_storage (" }"); + output_storage (" p = f->data + f->size - 1;"); + output_storage (" if ((*p & 0x0f) == 0x0d) {"); + output_storage (" if (val > 0) {"); + output_storage (" return cob_add_int (f, val, 0);"); + output_storage (" }"); + output_storage (" n = -val;"); + output_storage (" } else {"); + output_storage (" if (val < 0) {"); + output_storage (" return cob_add_int (f, val, 0);"); + output_storage (" }"); + output_storage (" n = val;"); + output_storage (" }"); + output_storage (" inc = (*p >> 4) + (n %% 10);"); + output_storage (" n /= 10;"); + output_storage (" carry = inc / 10;"); + output_storage (" *p = ((inc %% 10) << 4) | (*p & 0x0f);"); + output_storage (" p--;"); + + output_storage (" for (size = 0; size < f->size - 1; ++size, --p) {"); + output_storage (" if (!carry && !n) {"); + output_storage (" break;"); + output_storage (" }"); + output_storage (" inc = ((*p >> 4) * 10) + (*p & 0x0f) + carry + (n %% 100);"); + output_storage (" carry = inc / 100;"); + output_storage (" n /= 100;"); + output_storage (" inc %%= 100;"); + output_storage (" *p = ((inc / 10) << 4) | (inc %% 10);"); + output_storage (" }"); + output_storage (" return 0;"); + output_storage ("}"); + return; + /* Aligned variants */ /* Aligned compares */ diff --git a/cobc/codeoptim.def b/cobc/codeoptim.def index f52408e00..b9b8d5245 100644 --- a/cobc/codeoptim.def +++ b/cobc/codeoptim.def @@ -1,5 +1,5 @@ /* - Copyright (C) 2009-2013, 2018-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2013, 2018-2021,2023 Free Software Foundation, Inc. Written by Roger While, Ron Norman This file is part of GnuCOBOL. @@ -34,9 +34,16 @@ CB_OPTIM_DEF (COB_NOP) CB_OPTIM_DEF (COB_POINTER_MANIP) CB_OPTIM_DEF (COB_GET_NUMDISP) +#if 0 /* libcob's optimized version is not slower, so drop that */ CB_OPTIM_DEF (COB_CMP_PACKED_INT) CB_OPTIM_DEF (COB_GET_PACKED_INT) +CB_OPTIM_DEF (COB_GET_PACKED_INT64) +#endif + +/* note: the additions are also used for substract by wrapping + the second part in -(x) */ CB_OPTIM_DEF (COB_ADD_PACKED_INT) +CB_OPTIM_DEF (COB_ADD_PACKED_INT64) CB_OPTIM_DEF (COB_CMP_ALIGN_U16) CB_OPTIM_DEF (COB_CMP_ALIGN_S16) diff --git a/cobc/config.c b/cobc/config.c index 1b5b51ac3..cf690fe8b 100644 --- a/cobc/config.c +++ b/cobc/config.c @@ -1,5 +1,5 @@ /* - Copyright (C) 2003-2012, 2014-2017, 2019-2022 Free Software Foundation, Inc. + Copyright (C) 2003-2012, 2014-2017, 2019-2023 Free Software Foundation, Inc. Written by Keisuke Nishida, Roger While, Simon Sobisch This file is part of GnuCOBOL. @@ -772,11 +772,11 @@ cb_config_entry (char *buff, const char *fname, const int line) } else if (strcmp (name, "defaultbyte") == 0) { if (strcmp (val, "init") == 0) { /* generate default initialization per INITIALIZE rules */ - cb_default_byte = -1; + cb_default_byte = CB_DEFAULT_BYTE_INIT; break; } if (strcmp (val, "none") == 0) { - cb_default_byte = -2; + cb_default_byte = CB_DEFAULT_BYTE_NONE; #if 1 /* TODO: do not generate any default initialization for fields without VALUE, only the storage (best performance, least reproducibility); for now warn if specified on command line (allowing config files be correct already) */ @@ -795,7 +795,7 @@ cb_config_entry (char *buff, const char *fname, const int line) } else /* convert character to number (as quotes will commonly be removed when given on shell) */ - if (val[1] == 0 && (val[0] <= '0' || val[0] >= '9')) { + if (val[1] == 0 && (val[0] < '0' || val[0] > '9')) { cb_default_byte = val[0]; break; } diff --git a/cobc/error.c b/cobc/error.c index ab201c597..c257570bd 100644 --- a/cobc/error.c +++ b/cobc/error.c @@ -841,10 +841,11 @@ cb_syntax_check (const char *fmt, ...) enum cb_warn_val ret; va_list ap; va_start (ap, fmt); - if (cb_relaxed_syntax_checks) + if (cb_relaxed_syntax_checks) { ret = cb_warning_internal (COBC_WARN_FILLER, fmt, ap); - else + } else { ret = cb_error_internal (fmt, ap); + } va_end (ap); return cb_relaxed_syntax_checks ? ret != COBC_WARN_DISABLED : 0; } @@ -861,10 +862,11 @@ cb_syntax_check_x (cb_tree x, const char *fmt, ...) enum cb_warn_val ret; va_list ap; va_start (ap, fmt); - if (cb_relaxed_syntax_checks) + if (cb_relaxed_syntax_checks) { ret = cb_warning_x_internal (COBC_WARN_FILLER, x, fmt, ap); - else + } else { ret = cb_error_x_internal (x, fmt, ap); + } va_end (ap); return cb_relaxed_syntax_checks ? ret != COBC_WARN_DISABLED : 0; } diff --git a/cobc/field.c b/cobc/field.c index 96d4cda19..26765e7a1 100644 --- a/cobc/field.c +++ b/cobc/field.c @@ -458,8 +458,8 @@ cb_build_field_tree (const int level, cb_tree name, struct cb_field *last_field, } } if (last_field) { - if (last_field->level == 77 && f->level != 01 && - f->level != 77 && f->level != 66 && f->level != 88) { + if (last_field->level == 77 && f->level != 01 + && f->level != 77 && f->level != 66 && f->level != 88) { cb_error_x (name, _("level number must begin with 01 or 77")); return cb_error_node; } @@ -476,8 +476,9 @@ cb_build_field_tree (const int level, cb_tree name, struct cb_field *last_field, if (!CB_FIELD_P (x) || CB_FIELD (x)->level == 01 || CB_FIELD (x)->level == 77 - || (last_field && last_field->level == f->level - && last_field->parent == CB_FIELD (x)->parent)) { + || ( last_field + && f->level == last_field->level + && CB_FIELD (x)->parent == last_field->parent)) { redefinition_warning (name, x); break; } @@ -582,6 +583,13 @@ cb_build_field_tree (const int level, cb_tree name, struct cb_field *last_field, if (f->level <= 66) { f->flag_volatile = parent->flag_volatile; } + if (f->storage == CB_STORAGE_SCREEN) { + f->screen_foreg = parent->screen_foreg; + f->screen_backg = parent->screen_backg; + f->screen_prompt = parent->screen_prompt; + f->screen_control = parent->screen_control; + f->screen_color = parent->screen_color; + } } if (storage == CB_STORAGE_FILE @@ -645,7 +653,7 @@ cb_resolve_redefines (struct cb_field *field, cb_tree redefines) parent using strcasecmp */ for (items = r->word->items; items; items = CB_CHAIN (items)) { const cb_tree value = CB_VALUE (items); - if (CB_FIELD_P (value)) { + if (value != x && CB_FIELD_P (value)) { candidate = value; /* we want to get the last, so no "break" here */ } @@ -716,6 +724,8 @@ copy_children (struct cb_field *child, struct cb_field *target, level_child = child->level; } else { level_child = level + 1; + /* ensure that we don't set the "virtual level number" to one of + the "special" level numbers */ if (level_child == 66 || level_child == 78 || level_child == 88) { level_child++; } else if (level_child == 77) { @@ -893,7 +903,7 @@ copy_into_field (struct cb_field *source, struct cb_field *target) target->pic = cb_build_picture (source->pic->orig); } } else { - struct cb_picture* new_pic = NULL; + struct cb_picture *new_pic = NULL; int modifier = cb_get_int (target->like_modifier); if (modifier) { switch (target->usage) { @@ -2260,9 +2270,6 @@ validate_elementary_item (struct cb_field *f) f->pic = cb_build_binary_picture ("BINARY-DOUBLE", 18, 0); f->flag_real_binary = 1; break; - case CB_USAGE_COMP_5: - f->flag_real_binary = 1; - break; default: break; } @@ -2569,15 +2576,15 @@ setup_parameters (struct cb_field *f) f->pic->flag_is_calculated = 1; break; - case CB_USAGE_COMP_5: case CB_USAGE_COMP_N: + f->flag_real_binary = 1; + case CB_USAGE_COMP_5: if (f->pic && f->pic->orig && f->pic->orig[0] == 'X') { f->usage = CB_USAGE_COMP_X; f->pic->have_sign = 0; } - f->flag_real_binary = 1; /* Fall-through */ case CB_USAGE_COMP_X: if (f->pic @@ -3220,7 +3227,7 @@ cleanup_field_value (struct cb_field* f, cb_tree *val) } if (*val == cb_zero && !f->flag_internal_register - && cb_default_byte == -1 + && cb_default_byte == CB_DEFAULT_BYTE_INIT && ( f->storage == CB_STORAGE_WORKING || f->storage == CB_STORAGE_LOCAL) && !f->flag_sign_separate) { @@ -3228,7 +3235,27 @@ cleanup_field_value (struct cb_field* f, cb_tree *val) } break; case CB_CATEGORY_NATIONAL: - /* FIXME: Fall-through, but should handle national space */ + if (CB_LITERAL_P (*val)) { + const struct cb_literal *lit = CB_LITERAL (*val); + char *p = (char*)lit->data; + char *end = p + lit->size - 1; + if (lit->size % COB_NATIONAL_SIZE != 0) { + break; + } + if (*end == ' ') { + while (p < end && p[0] == 0x00 && p[1] == ' ') p += 2; + if (p == end) *val = cb_space; + } + } + if (*val == cb_space + && !f->flag_internal_register + && ( cb_default_byte == CB_DEFAULT_BYTE_INIT) + && ( f->storage == CB_STORAGE_WORKING + || f->storage == CB_STORAGE_LOCAL) + && !f->children) { + return 1; + } + break; case CB_CATEGORY_ALPHANUMERIC: if (CB_LITERAL_P (*val)) { const struct cb_literal *lit = CB_LITERAL (*val); @@ -3241,7 +3268,8 @@ cleanup_field_value (struct cb_field* f, cb_tree *val) } if (*val == cb_space && !f->flag_internal_register - && (cb_default_byte == -1 || cb_default_byte == ' ') + && ( cb_default_byte == CB_DEFAULT_BYTE_INIT + || cb_default_byte == ' ') && ( f->storage == CB_STORAGE_WORKING || f->storage == CB_STORAGE_LOCAL) && !f->children) { @@ -3425,7 +3453,9 @@ cb_validate_88_item (struct cb_field *f) for (l = f->values; l; l = CB_CHAIN (l)) { cb_tree x = CB_VALUE (l); /* for list A THRU C, X, Z we have another list */ - if (CB_LIST_P (x)) x = CB_VALUE (x); + if (CB_LIST_P (x)) { + x = CB_VALUE (x); + } if (CB_TREE_CLASS (x) != CB_CLASS_NUMERIC) { if (CB_CONST_P (x)) x = CB_TREE (f); cb_error_x (x, _("literal type does not match numeric data type")); @@ -3790,6 +3820,7 @@ cb_is_figurative_constant (const cb_tree x) || x == cb_norm_high || x == cb_quote || (CB_REFERENCE_P (x) + && CB_REFERENCE (x)->subs == NULL && CB_REFERENCE (x)->flag_all); } diff --git a/cobc/flag.def b/cobc/flag.def index 9348d2a7e..7c5fc2c8b 100644 --- a/cobc/flag.def +++ b/cobc/flag.def @@ -129,6 +129,9 @@ CB_FLAG (cb_flag_stack_extended, 1, "stack-extended", CB_FLAG_ON (cb_flag_fast_math, 0, "fast-math", _(" -ffast-math Disables emitting faster arithmetic logic")) +CB_FLAG_ON (cb_flag_fast_compare, 0, "fast-compare", + _(" -fno-fast-compare disables inline comparisions\n")) + /* Normal flags */ CB_FLAG_ON (cb_flag_remove_unreachable, 1, "remove-unreachable", diff --git a/cobc/help.c b/cobc/help.c index 2b6f04f0f..15a78ffbe 100644 --- a/cobc/help.c +++ b/cobc/help.c @@ -118,10 +118,10 @@ cobc_print_usage_common_options (void) puts (_(" -I add to copy/include search path")); puts (_(" -L add to library search path")); puts (_(" -l link the library ")); + puts (_(" -K generate CALL to as static")); puts (_(" -D define for COBOL compilation")); puts (_(" -A add to the C compile phase")); puts (_(" -Q add to the C link phase")); - puts (_(" -Q add to the C link phase")); puts (_(" --coverage instrument generated binaries for coverage")); puts (_(" --conf= user-defined dialect configuration; see -std")); puts (_(" --list-reserved display reserved words")); diff --git a/cobc/parser.y b/cobc/parser.y index 764e8ce2e..c2342b543 100644 --- a/cobc/parser.y +++ b/cobc/parser.y @@ -40,6 +40,7 @@ #define COB_IN_PARSER 1 #include "cobc.h" #include "tree.h" +#include "libcob/coblocal.h" #define _PARSER_H /* work around bad Windows SDK header */ @@ -151,7 +152,6 @@ unsigned int cobc_in_procedure = 0; unsigned int cobc_in_data_division = 0; unsigned int cobc_in_usage = 0; unsigned int cobc_in_repository = 0; -unsigned int cobc_force_literal = 0; unsigned int cobc_cs_check = 0; unsigned int cobc_allow_program_name = 0; unsigned int cobc_in_xml_generate_body = 0; @@ -468,8 +468,8 @@ begin_implicit_statement (void) # if 0 /* activate only for debugging purposes for attribs FIXME: Replace by DEBUG_LOG function */ -static -void print_bits (cob_flags_t num) +static void +print_bits (cob_flags_t num) { unsigned int size = sizeof (cob_flags_t); unsigned int max_pow = 1 << (size * 8 - 1); @@ -486,16 +486,16 @@ void print_bits (cob_flags_t num) /* functions for storing current position and assigning it to a cb_tree after its parsing is finished */ -static COB_INLINE -void backup_current_pos (void) +static COB_INLINE void +backup_current_pos (void) { backup_source_file = cb_source_file; backup_source_line = cb_source_line; } #if 0 /* currently not used */ -static COB_INLINE -void set_pos_from_backup (cb_tree x) +static COB_INLINE void +set_pos_from_backup (cb_tree x) { x->source_file = backup_source_file; x->source_line = backup_source_line; @@ -537,7 +537,9 @@ emit_entry (const char *name, const int encode, cb_tree using_list, cb_tree conv for (l = current_program->entry_list; l; l = CB_CHAIN (l)) { struct cb_label *check = CB_LABEL (CB_PURPOSE (l)); if (strcmp (name, check->name) == 0) { - cb_error_x (CB_TREE (current_statement), + cb_error_x (current_statement + ? CB_TREE (current_statement) + : CB_TREE (current_program), _("ENTRY '%s' duplicated"), name); } } @@ -550,7 +552,7 @@ emit_entry (const char *name, const int encode, cb_tree using_list, cb_tree conv current_program->entry_list = cb_list_append (current_program->entry_list, - CB_BUILD_PAIR (label, CB_BUILD_PAIR(entry_conv, using_list))); + CB_BUILD_PAIR (label, CB_BUILD_PAIR (entry_conv, using_list))); } /* Main entry point and the number of its main parameters */ @@ -801,9 +803,10 @@ setup_occurs_min_max (cb_tree occurs_min, cb_tree occurs_max) } if (current_field->occurs_max <= current_field->occurs_min) { cb_error (_("OCCURS TO must be greater than OCCURS FROM")); + current_field->occurs_max = current_field->occurs_min; } } else { - current_field->occurs_max = 0; + current_field->occurs_max = 0; /* UNBOUNDED */ } } else { current_field->occurs_min = 1; /* CHECKME: why using 1 ? */ @@ -812,6 +815,17 @@ setup_occurs_min_max (cb_tree occurs_min, cb_tree occurs_max) cb_verify (cb_odo_without_to, _("OCCURS DEPENDING ON without TO phrase")); } } + /* LCOV_EXCL_START */ + if (current_field->occurs_max > COB_MAX_FIELD_SIZE) { + /* testing here to give an early error; unlikely to be reached + with 64bit compilers so no own msgid for now; should be added + when the maximum field size is changed to be configurable */ + cb_error_x (CB_TREE (current_field), + _("'%s' cannot be larger than %d bytes"), + current_field->name, COB_MAX_FIELD_SIZE); + current_field->occurs_min = current_field->occurs_max = 1; + } + /* LCOV_EXCL_STOP */ } static void @@ -1118,7 +1132,6 @@ clear_initial_values (void) cobc_in_procedure = 0; cobc_in_data_division = 0; cobc_in_repository = 0; - cobc_force_literal = 0; cobc_in_xml_generate_body = 0; cobc_in_json_generate_body = 0; non_const_word = 0; @@ -1219,7 +1232,8 @@ end_scope_of_program_name (struct cb_program *program, const unsigned char type) /* Remove any subprograms */ l = CB_LIST (defined_prog_list); while (l) { - if (CB_PROGRAM (l->value)->nested_level > program->nested_level) { + const struct cb_program *lprog = CB_PROGRAM (l->value); + if (lprog->nested_level > program->nested_level) { remove_program_name (l, prev); } else { prev = l; @@ -1235,11 +1249,11 @@ end_scope_of_program_name (struct cb_program *program, const unsigned char type) if (!program->flag_common) { l = CB_LIST (defined_prog_list); while (l) { + const struct cb_program *lprog = CB_PROGRAM (l->value); /* The nested_level check is for the pathological case where two nested programs have the same name */ - if (0 == strcmp (program->orig_program_id, - CB_PROGRAM (l->value)->orig_program_id) - && program->nested_level == CB_PROGRAM (l->value)->nested_level) { + if (program->nested_level == lprog->nested_level + && !strcmp (program->orig_program_id, lprog->orig_program_id)) { remove_program_name (l, prev); if (prev && prev->chain != NULL) { l = CB_LIST (prev->chain); @@ -1259,6 +1273,17 @@ end_scope_of_program_name (struct cb_program *program, const unsigned char type) } } +static void +setup_registers (void) +{ + backup_source_file = cb_source_file; + cb_source_file = "register-definition"; + cb_set_intr_when_compiled (); + cb_build_registers (); + cb_add_external_defined_registers (); + cb_source_file = backup_source_file; +} + static void setup_program_start (void) { @@ -1276,29 +1301,31 @@ setup_program_start (void) } static int -setup_program (cb_tree id, cb_tree as_literal, const unsigned char type, const int prototype) +setup_program (cb_tree id, cb_tree as_literal, const enum cob_module_type type, const int prototype) { const char *external_name = NULL; setup_program_start (); - /* finish last program/function */ - if (!first_prog) { + if (first_prog) { + /* in this case we had setup an "empty" current_program + along with registers before (on start) and now only "add" + to that */ + first_prog = 0; + } else { + /* finish last program/function */ if (!current_program->flag_validated) { current_program->flag_validated = 1; cb_validate_program_body (current_program); } + /* setup new */ clear_initial_values (); current_program = cb_build_program (current_program, depth); if (depth) { build_words_for_nested_programs(); } - cb_set_intr_when_compiled (); - cb_build_registers (); - cb_add_external_defined_registers (); - } else { - first_prog = 0; + setup_registers (); } /* set internal name */ @@ -1307,6 +1334,7 @@ setup_program (cb_tree id, cb_tree as_literal, const unsigned char type, const i } else { current_program->program_name = CB_NAME (id); } + stack_progid[depth] = current_program->program_name; current_program->prog_type = type; current_program->flag_prototype = prototype; @@ -1711,18 +1739,24 @@ setup_external_definition_type (cb_tree x) static void inherit_external_definition (const int lvl) { - /* note: REDEFINES (clause 1) is allowed with RM/COBOL but not COBOL 2002+ */ - static const cob_flags_t allowed_clauses = - SYN_CLAUSE_1 | SYN_CLAUSE_2 | SYN_CLAUSE_3 | SYN_CLAUSE_7 | SYN_CLAUSE_12; - cob_flags_t tested = check_pic_duplicate & ~(allowed_clauses); - if (tested != SYN_CLAUSE_30 && tested != SYN_CLAUSE_31 - && tested != 0 /* USAGE as TYPE TO */) { - struct cb_field *fld = CB_FIELD (current_field->external_definition); - cb_error_x (CB_TREE(current_field), _("illegal combination of %s with other clauses"), - fld->flag_is_typedef ? "TYPE TO" : "SAME AS"); - current_field->flag_is_verified = 1; - current_field->flag_invalid = 1; - } else { + /* syntax checks */ + { + /* note: REDEFINES (clause 1) is allowed with RM/COBOL but not COBOL 2002+ */ + static const cob_flags_t allowed_clauses = + SYN_CLAUSE_1 | SYN_CLAUSE_2 | SYN_CLAUSE_3 | SYN_CLAUSE_7 | SYN_CLAUSE_12; + cob_flags_t tested = check_pic_duplicate & ~(allowed_clauses); + if (tested != SYN_CLAUSE_30 && tested != SYN_CLAUSE_31 + && tested != 0 /* USAGE as TYPE TO */) { + struct cb_field *fld = CB_FIELD (current_field->external_definition); + cb_error_x (CB_TREE(current_field), _("illegal combination of %s with other clauses"), + fld->flag_is_typedef ? "TYPE TO" : "SAME AS"); + current_field->flag_is_verified = 1; + current_field->flag_invalid = 1; + return; + } + } + /* actual copy */ + { struct cb_field *fld = CB_FIELD (current_field->external_definition); int new_level = lvl; int old_level = current_field->level; @@ -1850,8 +1884,8 @@ bit_set_attr (const cb_tree on_off, const cob_flags_t attr_val) } static void -set_field_attribs (cb_tree fgc, cb_tree bgc, cb_tree scroll, - cb_tree timeout, cb_tree prompt, cb_tree size_is) +set_field_attribs (cb_tree fgc, cb_tree bgc, cb_tree scroll, cb_tree timeout, + cb_tree prompt, cb_tree size_is, cb_tree control, cb_tree color, cb_tree cursor) { /* [WITH] FOREGROUND-COLOR [IS] */ if (fgc) { @@ -1877,15 +1911,27 @@ set_field_attribs (cb_tree fgc, cb_tree bgc, cb_tree scroll, if (size_is) { current_statement->attr_ptr->size_is = size_is; } + /* [WITH] CONTROL (variable named attributes) */ + if (control) { + current_statement->attr_ptr->control = control; + } + /* [WITH] COLOR (variable numeric added attributes) */ + if (color) { + current_statement->attr_ptr->color = color; + } + /* [WITH] CURSOR */ + if (cursor) { + current_statement->attr_ptr->cursor = cursor; + } } static void -set_attribs (cb_tree fgc, cb_tree bgc, cb_tree scroll, +set_attribs (const cob_flags_t attrib, cb_tree fgc, cb_tree bgc, cb_tree scroll, cb_tree timeout, cb_tree prompt, cb_tree size_is, - const cob_flags_t attrib) + cb_tree control, cb_tree color, cb_tree cursor) { attach_attrib_to_cur_stmt (); - set_field_attribs (fgc, bgc, scroll, timeout, prompt, size_is); + set_field_attribs (fgc, bgc, scroll, timeout, prompt, size_is, control, color, cursor); current_statement->attr_ptr->dispattrs |= attrib; } @@ -1897,7 +1943,7 @@ set_attribs_with_conflict (cb_tree fgc, cb_tree bgc, cb_tree scroll, const char *confl_name, const cob_flags_t confl_attrib) { attach_attrib_to_cur_stmt (); - set_field_attribs (fgc, bgc, scroll, timeout, prompt, size_is); + set_field_attribs (fgc, bgc, scroll, timeout, prompt, size_is, NULL, NULL, NULL); set_dispattr_with_conflict (clause_name, attrib, confl_name, confl_attrib); @@ -1932,6 +1978,54 @@ zero_conflicting_flags (const cob_flags_t screen_flag, cob_flags_t parent_flag) return parent_flag; } +static int +has_relative_pos (struct cb_field const *field) +{ + return !!(field->screen_flag + & ( COB_SCREEN_LINE_PLUS | COB_SCREEN_LINE_MINUS + | COB_SCREEN_COLUMN_PLUS | COB_SCREEN_COLUMN_MINUS)); +} + +static void +validate_screen_attributes (void) +{ + cob_flags_t flags; + + if (current_field->parent) { + flags = current_field->parent->screen_flag; + flags &= ~COB_SCREEN_BLANK_LINE; + flags &= ~COB_SCREEN_BLANK_SCREEN; + flags &= ~COB_SCREEN_ERASE_EOL; + flags &= ~COB_SCREEN_ERASE_EOS; + flags &= ~COB_SCREEN_LINE_PLUS; + flags &= ~COB_SCREEN_LINE_MINUS; + flags &= ~COB_SCREEN_COLUMN_PLUS; + flags &= ~COB_SCREEN_COLUMN_MINUS; + + flags = zero_conflicting_flags (current_field->screen_flag, flags); + + current_field->screen_flag |= flags; + } + + if (current_field->screen_flag & COB_SCREEN_INITIAL) { + if (!(current_field->screen_flag & COB_SCREEN_INPUT)) { + cb_error (_("INITIAL specified on non-input field")); + } + } + if (!qualifier) { + current_field->flag_filler = 1; + } + + if (!description_field) { + description_field = current_field; + } + if (current_field->flag_occurs + && !has_relative_pos (current_field)) { + cb_error (_("relative LINE/COLUMN clause required with OCCURS")); + } + cobc_cs_check = CB_CS_SCREEN; +} + static void check_and_set_usage (const enum cb_usage usage) { @@ -1983,14 +2077,6 @@ check_preceding_tallying_phrases (const enum tallying_phrase phrase) previous_tallying_phrase = phrase; } -static int -has_relative_pos (struct cb_field const *field) -{ - return !!(field->screen_flag - & ( COB_SCREEN_LINE_PLUS | COB_SCREEN_LINE_MINUS - | COB_SCREEN_COLUMN_PLUS | COB_SCREEN_COLUMN_MINUS)); -} - static int is_recursive_call (cb_tree target) { @@ -3296,6 +3382,7 @@ set_record_size (cb_tree min, cb_tree max) %token WHEN_XML "WHEN" %token WIDTH %token WIDTH_IN_CELLS "WIDTH-IN-CELLS" +%token WINAPI %token WINDOW %token WITH %token WORD "Identifier" @@ -3448,17 +3535,14 @@ set_record_size (cb_tree min, cb_tree max) start: { - clear_initial_values (); defined_prog_list = NULL; cobc_cs_check = 0; main_flag_set = 0; + clear_initial_values (); current_program = cb_build_program (NULL, 0); - backup_source_file = cb_source_file; - cb_set_intr_when_compiled (); - cb_build_registers (); - cb_add_external_defined_registers (); + setup_registers (); } compilation_group { @@ -4313,7 +4397,7 @@ repository_name: | PROGRAM WORD _as_literal { if ($2 != cb_error_node - && cb_verify (cb_program_prototypes, _("PROGRAM phrase"))) { + && cb_verify (cb_program_prototypes, _("PROGRAM phrase"))) { setup_prototype ($2, $3, COB_MODULE_TYPE_PROGRAM, 0); } } @@ -4428,17 +4512,19 @@ mnemonic_choices: if (CB_SYSTEM_NAME(save_tree)->token != CB_FEATURE_CONVENTION) { cb_error_x (save_tree, _("invalid %s clause"), "SPECIAL NAMES"); } else if (CB_VALID_TREE ($3)) { + const char *name = CB_NAME ($3); CB_SYSTEM_NAME(save_tree)->value = $1; cb_define ($3, save_tree); CB_CHAIN_PAIR (current_program->mnemonic_spec_list, $3, save_tree); /* remove non-standard context-sensitive words when identical to mnemonic */ - if (cb_strcasecmp (CB_NAME($3), "EXTERN" ) == 0 - || cb_strcasecmp (CB_NAME($3), "STDCALL") == 0 - || cb_strcasecmp (CB_NAME($3), "STATIC" ) == 0 - || cb_strcasecmp (CB_NAME($3), "C" ) == 0 - || cb_strcasecmp (CB_NAME($3), "PASCAL" ) == 0) { - remove_context_sensitivity (CB_NAME($3), CB_CS_CALL); + if (cb_strcasecmp (name, "EXTERN" ) == 0 + || cb_strcasecmp (name, "STDCALL") == 0 + || cb_strcasecmp (name, "WINAPI") == 0 + || cb_strcasecmp (name, "STATIC" ) == 0 + || cb_strcasecmp (name, "C" ) == 0 + || cb_strcasecmp (name, "PASCAL" ) == 0) { + remove_context_sensitivity (name, CB_CS_CALL); } } } @@ -6978,8 +7064,10 @@ data_description: description_field = current_field; } } -| level_number error TOK_DOT +| level_number _entry_name error TOK_DOT { + /* note: this construct "eats" the error, the actual field + definition (level + name) is already parsed and added to the tree */ yyerrok; cb_unput_dot (); check_pic_duplicate = 0; @@ -6988,6 +7076,26 @@ data_description: current_field = cb_get_real_field (); #endif } +/* useful error handling, but needs either a hack to internally + make DISPLAY in DATA DIVISION to USAGE DISPLAY, or need to + drop "_usage_is usage" * / +| + { + cb_tree filler = cb_build_filler (); + qualifier = NULL; + keys_list = NULL; + non_const_word = 0; + cb_error (_("missing %s"), "level number"); + if (set_current_field (1, filler)) { + YYERROR; + } + } + data_description_clause_sequence TOK_DOT + { + check_pic_duplicate = 0; + check_duplicate = 0; + } +*/ ; level_number: @@ -7724,22 +7832,23 @@ _pic_locale_format_or_depending_on_or_byte_length: _("variable-length PICTURE"), enum_explain_storage (current_storage)); } else { - /* Implicitly translate `PIC Lc... DEPENDING N` (where - `c` may actually only be `X` or `A`) into a group - with a single sub-field `PIC c OCCURS 1 TO N`. */ - const char pic[2] = { current_field->pic->orig[1], 0}; - struct cb_field * const chld = - CB_FIELD (cb_build_field (cb_build_filler ())); - chld->pic = cb_build_picture (pic); - chld->storage = current_field->storage; - chld->depending = depending; - chld->flag_occurs = 1; - chld->occurs_min = 1; - chld->occurs_max = current_field->pic->size - 1; - chld->parent = current_field; - current_field->children = chld; - cobc_parse_free (current_field->pic); - current_field->pic = NULL; + /* Implicitly translate `PIC Lc... DEPENDING N` (where + `c` may actually only be `X` or `A`) into a group + with a single sub-field `PIC c OCCURS 1 TO N`. */ + struct cb_field * const chld = + CB_FIELD (cb_build_field (cb_build_filler ())); + char pic[2] = { 0 }; + pic[0] = current_field->pic->orig[1]; + chld->pic = cb_build_picture (pic); + chld->storage = current_field->storage; + chld->depending = depending; + chld->flag_occurs = 1; + chld->occurs_min = 1; + chld->occurs_max = current_field->pic->size - 1; + chld->parent = current_field; + current_field->children = chld; + cobc_parse_free (current_field->pic); + current_field->pic = NULL; } /* Raise this flag in the error cases above, to avoid unrelated warning or error messages upon tentative validation of @@ -7914,6 +8023,7 @@ usage: } | INDEX { + /* TODO: second type which is 0-based, depending on dialect option */ check_and_set_usage (CB_USAGE_INDEX); } | PACKED_DECIMAL @@ -8417,8 +8527,16 @@ occurs_index_list: occurs_index: unqualified_word { - $$ = cb_build_index ($1, cb_int1, 1U, current_field); - CB_FIELD_PTR ($$)->index_type = CB_STATIC_INT_INDEX; + const enum cb_storage storage = current_field->storage; + const cb_tree init_val = cb_default_byte == CB_DEFAULT_BYTE_INIT + ? cb_int1 : NULL; + $$ = cb_build_index ($1, init_val, 1U, current_field); + if (storage == CB_STORAGE_LOCAL) { + CB_FIELD_PTR ($$)->storage = CB_STORAGE_LOCAL; + CB_FIELD_PTR ($$)->index_type = CB_INT_INDEX; + } else { + CB_FIELD_PTR ($$)->index_type = CB_STATIC_INT_INDEX; + } } ; @@ -8913,7 +9031,9 @@ _local_storage_section: _record_description_list { if ($5) { - current_program->local_storage = CB_FIELD ($5); + /* note: we may added internal items like INDEXES already, + so ADD, not SET */ + CB_FIELD_ADD (current_program->local_storage, CB_FIELD ($5)); } } ; @@ -8932,7 +9052,9 @@ _linkage_section: _record_description_list { if ($5) { - current_program->linkage_storage = CB_FIELD ($5); + /* note: we may added internal items like INDEXES already, + so ADD, not SET */ + CB_FIELD_ADD (current_program->linkage_storage, CB_FIELD ($5)); } } ; @@ -9726,7 +9848,9 @@ _screen_section: { if (description_field) { get_finalized_description_tree (); - current_program->screen_storage = description_field; + /* note: we may added internal items like INDEXES already, + so ADD, not SET */ + CB_FIELD_ADD (current_program->screen_storage, description_field); current_program->flag_screen = 1; } cobc_cs_check = 0; @@ -9751,49 +9875,10 @@ screen_description: if (set_current_field (level, $2)) { YYERROR; } - if (current_field->parent) { - current_field->screen_foreg = current_field->parent->screen_foreg; - current_field->screen_backg = current_field->parent->screen_backg; - current_field->screen_prompt = current_field->parent->screen_prompt; - } } _screen_options { - cob_flags_t flags; - - if (current_field->parent) { - flags = current_field->parent->screen_flag; - flags &= ~COB_SCREEN_BLANK_LINE; - flags &= ~COB_SCREEN_BLANK_SCREEN; - flags &= ~COB_SCREEN_ERASE_EOL; - flags &= ~COB_SCREEN_ERASE_EOS; - flags &= ~COB_SCREEN_LINE_PLUS; - flags &= ~COB_SCREEN_LINE_MINUS; - flags &= ~COB_SCREEN_COLUMN_PLUS; - flags &= ~COB_SCREEN_COLUMN_MINUS; - - flags = zero_conflicting_flags (current_field->screen_flag, - flags); - - current_field->screen_flag |= flags; - } - - if (current_field->screen_flag & COB_SCREEN_INITIAL) { - if (!(current_field->screen_flag & COB_SCREEN_INPUT)) { - cb_error (_("INITIAL specified on non-input field")); - } - } - if (!qualifier) { - current_field->flag_filler = 1; - } - - if (!description_field) { - description_field = current_field; - } - if (current_field->flag_occurs - && !has_relative_pos (current_field)) { - cb_error (_("relative LINE/COLUMN clause required with OCCURS")); - } + validate_screen_attributes (); } /* ACUCOBOL-GT control definition */ | level_number _entry_name @@ -9802,11 +9887,6 @@ screen_description: if (set_current_field (level, $2)) { YYERROR; } - if (current_field->parent) { - current_field->screen_foreg = current_field->parent->screen_foreg; - current_field->screen_backg = current_field->parent->screen_backg; - current_field->screen_prompt = current_field->parent->screen_prompt; - } } control_definition { @@ -9815,41 +9895,7 @@ screen_description: } _control_attributes_and_screen_options { - cob_flags_t flags; - - if (current_field->parent) { - flags = current_field->parent->screen_flag; - flags &= ~COB_SCREEN_BLANK_LINE; - flags &= ~COB_SCREEN_BLANK_SCREEN; - flags &= ~COB_SCREEN_ERASE_EOL; - flags &= ~COB_SCREEN_ERASE_EOS; - flags &= ~COB_SCREEN_LINE_PLUS; - flags &= ~COB_SCREEN_LINE_MINUS; - flags &= ~COB_SCREEN_COLUMN_PLUS; - flags &= ~COB_SCREEN_COLUMN_MINUS; - - flags = zero_conflicting_flags (current_field->screen_flag, - flags); - - current_field->screen_flag |= flags; - } - - if (current_field->screen_flag & COB_SCREEN_INITIAL) { - if (!(current_field->screen_flag & COB_SCREEN_INPUT)) { - cb_error (_("INITIAL specified on non-input field")); - } - } - if (!qualifier) { - current_field->flag_filler = 1; - } - - if (!description_field) { - description_field = current_field; - } - if (current_field->flag_occurs - && !has_relative_pos (current_field)) { - cb_error (_("relative LINE/COLUMN clause required with OCCURS")); - } + validate_screen_attributes (); cobc_cs_check = CB_CS_SCREEN; } /* entry for error recovery */ @@ -10050,14 +10096,15 @@ screen_option: } | COLOR _is num_id_or_lit { -#if 0 /* TODO: implement, and add reverse to BACKGROUND/FOREGROUND-COLOR */ - check_repeated ("COLOR", SYN_CLAUSE_19, &check_pic_duplicate); - set_screen_attr_with_conflict ("COLOR", COB_SCREEN_COLOR, - "BACKGROUND-COLOR", COB_SCREEN_BACKGROUND_COLOR); - set_screen_attr_with_conflict ("COLOR", COB_SCREEN_COLOR, - "FOREGROUND-COLOR", FOREGROUND_COLOR); -#endif - CB_PENDING ("COLOR clause"); + check_repeated ("COLOR", SYN_CLAUSE_25, &check_pic_duplicate); + current_field->screen_color = $3; + CB_PENDING ("COLOR clause (SCREEN)"); /* no place in cob_screen */ + } +| CONTROL _is display_identifier + { + check_repeated ("CONTROL", SYN_CLAUSE_24, &check_duplicate); + current_field->screen_control = $3; + CB_PENDING ("CONTROL clause (SCREEN)"); /* no place in cob_screen */ } | FOREGROUND_COLOR _is num_id_or_lit { @@ -10976,13 +11023,13 @@ procedure_param_list: procedure_param: _procedure_type _size_optional _procedure_optional WORD _acu_size { - cb_tree x; - struct cb_field *f; - - x = cb_build_identifier ($4, 0); - if ($3 == cb_int1 && CB_VALID_TREE (x) && cb_ref (x) != cb_error_node) { - f = CB_FIELD (cb_ref (x)); - f->flag_is_pdiv_opt = 1; + cb_tree x = cb_build_identifier ($4, 0); + if ($3 == cb_int1 + && CB_VALID_TREE (x)) { + cb_tree fx = cb_ref (x); + if (fx != cb_error_node) { + CB_FIELD (fx)->flag_is_pdiv_opt = 1; + } } $$ = CB_BUILD_PAIR (cb_int (call_mode), x); @@ -11433,10 +11480,8 @@ statement_list: statements: { - cb_tree label; - if (!current_section) { - label = cb_build_reference ("MAIN SECTION"); + cb_tree label = cb_build_reference ("MAIN SECTION"); current_section = CB_LABEL (cb_build_label (label, NULL)); current_section->flag_section = 1; current_section->flag_dummy_section = 1; @@ -11446,12 +11491,12 @@ statements: emit_statement (CB_TREE (current_section)); } if (!current_paragraph) { - label = cb_build_reference ("MAIN PARAGRAPH"); + cb_tree label = cb_build_reference ("MAIN PARAGRAPH"); current_paragraph = CB_LABEL (cb_build_label (label, NULL)); - CB_TREE (current_paragraph)->source_file - = CB_TREE (current_section)->source_file; - CB_TREE (current_paragraph)->source_line - = CB_TREE (current_section)->source_line; + current_paragraph->common.source_file + = current_section->common.source_file; + current_paragraph->common.source_line + = current_section->common.source_line; current_paragraph->flag_declaratives = !!in_declaratives; current_paragraph->flag_skip_label = !!skip_statements; current_paragraph->flag_dummy_paragraph = 1; @@ -11838,7 +11883,7 @@ accept_clause: { check_repeated (_("TIME-OUT or BEFORE TIME clauses"), SYN_CLAUSE_4, &check_duplicate); - set_attribs (NULL, NULL, NULL, $3, NULL, NULL, 0); + set_attribs (0, NULL, NULL, NULL, $3, NULL, NULL, NULL, NULL, NULL); } ; @@ -11955,22 +12000,40 @@ accp_attr: check_repeated ("BLINK", SYN_CLAUSE_8, &check_duplicate); set_dispattr (COB_SCREEN_BLINK); } +| COLOR _is num_id_or_lit + { + /* FIXME: arithmetic expression should be possible, too! */ + check_repeated ("COLOR", SYN_CLAUSE_30, &check_duplicate); + set_attribs (0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, $3, NULL); + } +| CONTROL _is display_identifier + { + check_repeated ("CONTROL", SYN_CLAUSE_31, &check_duplicate); + set_attribs (0, NULL, NULL, NULL, NULL, NULL, NULL, $3, NULL, NULL); + CB_UNFINISHED ("CONTROL clause"); + } | CONVERSION { + /* note: aliased by CONVERT */ check_repeated ("CONVERSION", SYN_CLAUSE_9, &check_duplicate); + set_dispattr (COB_SCREEN_CONV); CB_PENDING ("ACCEPT CONVERSION"); } -| CURSOR _is positive_id_or_lit +| CURSOR positive_id_or_lit { /* FIXME: arithmetic expression should be possible, too! */ - if (current_program->cursor_pos) { - emit_duplicate_clause_message ("CURSOR"); - } else { - /* TODO: actually reasonable and easy extension: an - *offset within the field* [auto-correct to 1/max] - (when variable also stored back on return) - */ - CB_PENDING ("ACCEPT ... WITH CURSOR"); + struct cb_program *prog = current_program; + while (prog) { + if (!prog->nested_level) { + if (prog->cursor_pos) { + emit_duplicate_clause_message ("CURSOR"); + } else { + check_repeated ("CURSOR", SYN_CLAUSE_32, &check_duplicate); + set_attribs (0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, $2); + } + break; + } + prog = prog->next_program; } } | FULL @@ -12044,7 +12107,7 @@ accp_attr: { /* Note: CHARACTER optional in ACUCOBOL, required by others */ check_repeated ("PROMPT", SYN_CLAUSE_17, &check_duplicate); - set_attribs (NULL, NULL, NULL, NULL, $4, NULL, COB_SCREEN_PROMPT); + set_attribs (COB_SCREEN_PROMPT, NULL, NULL, NULL, NULL, $4, NULL, NULL, NULL, NULL); } | PROMPT { @@ -12071,7 +12134,7 @@ accp_attr: { /* FIXME: arithmetic expression should be possible, too! */ check_repeated ("SIZE", SYN_CLAUSE_21, &check_duplicate); - set_attribs (NULL, NULL, NULL, NULL, NULL, $4, 0); + set_attribs (0, NULL, NULL, NULL, NULL, NULL, $4, NULL, NULL, NULL); } | UNDERLINE { @@ -12096,22 +12159,15 @@ accp_attr: set_dispattr_with_conflict ("UPPER", COB_SCREEN_UPPER, "LOWER", COB_SCREEN_LOWER); } -| COLOR _is num_id_or_lit - { - /* FIXME: arithmetic expression should be possible, too! */ - check_repeated ("FOREGROUND-COLOR", SYN_CLAUSE_26, &check_duplicate); - check_repeated ("BACKGROUND-COLOR", SYN_CLAUSE_27, &check_duplicate); - CB_PENDING ("COLOR"); - } | FOREGROUND_COLOR _is num_id_or_lit { check_repeated ("FOREGROUND-COLOR", SYN_CLAUSE_26, &check_duplicate); - set_attribs ($3, NULL, NULL, NULL, NULL, NULL, 0); + set_attribs (0, $3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); } | BACKGROUND_COLOR _is num_id_or_lit { check_repeated ("BACKGROUND-COLOR", SYN_CLAUSE_27, &check_duplicate); - set_attribs (NULL, $3, NULL, NULL, NULL, NULL, 0); + set_attribs (0, NULL, $3, NULL, NULL, NULL, NULL, NULL, NULL, NULL); } | SCROLL _up _scroll_lines { @@ -12131,7 +12187,7 @@ accp_attr: { check_repeated (_("TIME-OUT or BEFORE TIME clauses"), SYN_CLAUSE_4, &check_duplicate); - set_attribs (NULL, NULL, NULL, $3, NULL, NULL, 0); + set_attribs (0, NULL, NULL, NULL, $3, NULL, NULL, NULL, NULL, NULL); } | _control KEY _in key_dest ; @@ -12473,6 +12529,10 @@ mnemonic_conv: { $$ = cb_int (CB_CONV_STDCALL); } +| WINAPI /* not active for ENTRY-CONVENTION via PROCEDURE DIVISION */ + { + $$ = cb_int (CB_CONV_STDCALL | CB_CONV_STATIC_LINK); + } | C /* not active for ENTRY-CONVENTION via PROCEDURE DIVISION */ { $$ = cb_int (CB_CONV_C); @@ -13090,6 +13150,8 @@ display_body: | screen_or_device_display _common_exception_phrases | _with CONVERSION screen_or_device_display _common_exception_phrases { + /* note: aliased by CONVERT */ + set_dispattr (COB_SCREEN_CONV); CB_PENDING ("DISPLAY WITH CONVERSION"); } | display_erase /* note: may also be part of display_pos_specifier */ @@ -13572,10 +13634,23 @@ disp_attr: check_repeated ("BLINK", SYN_CLAUSE_7, &check_duplicate); set_dispattr (COB_SCREEN_BLINK); } +| COLOR _is num_id_or_lit + { + check_repeated ("COLOR", SYN_CLAUSE_21, &check_duplicate); + set_attribs (0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, $3, NULL); + } +| CONTROL _is display_identifier + { + check_repeated ("CONTROL", SYN_CLAUSE_22, &check_duplicate); + set_attribs (0, NULL, NULL, NULL, NULL, NULL, NULL, $3, NULL, NULL); + CB_UNFINISHED ("CONTROL clause"); + } | CONVERSION { + /* note: aliased by CONVERT */ check_repeated ("CONVERSION", SYN_CLAUSE_8, &check_duplicate); - cb_warning (COBC_WARN_FILLER, _("ignoring %s phrase"), "CONVERSION"); + set_dispattr (COB_SCREEN_CONV); + CB_PENDING ("CONVERSION"); } | ERASE eol { @@ -13637,28 +13712,22 @@ disp_attr: | SIZE _is num_id_or_lit { check_repeated ("SIZE", SYN_CLAUSE_15, &check_duplicate); - set_attribs (NULL, NULL, NULL, NULL, NULL, $3, 0); + set_attribs (0, NULL, NULL, NULL, NULL, NULL, $3, NULL, NULL, NULL); } | UNDERLINE { check_repeated ("UNDERLINE", SYN_CLAUSE_16, &check_duplicate); set_dispattr (COB_SCREEN_UNDERLINE); } -| COLOR _is num_id_or_lit - { - check_repeated ("FOREGROUND-COLOR", SYN_CLAUSE_17, &check_duplicate); - check_repeated ("BACKGROUND-COLOR", SYN_CLAUSE_18, &check_duplicate); - CB_PENDING ("COLOR"); - } | FOREGROUND_COLOR _is_equal num_id_or_lit { check_repeated ("FOREGROUND-COLOR", SYN_CLAUSE_17, &check_duplicate); - set_attribs ($3, NULL, NULL, NULL, NULL, NULL, 0); + set_attribs (0, $3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); } | BACKGROUND_COLOR _is_equal num_id_or_lit { check_repeated ("BACKGROUND-COLOR", SYN_CLAUSE_18, &check_duplicate); - set_attribs (NULL, $3, NULL, NULL, NULL, NULL, 0); + set_attribs (0, NULL, $3, NULL, NULL, NULL, NULL, NULL, NULL, NULL); } | SCROLL _up _scroll_lines { @@ -16221,7 +16290,7 @@ set_to: { cb_emit_set_to_fcdkey ($1, $7); } -| target_x_list TO x +| target_x_list TO x_numeric_or_pointer { cb_emit_set_to ($1, $3); } @@ -16231,6 +16300,53 @@ set_to: } ; +x_numeric_or_pointer: + identifier + { + switch (cb_tree_class ($1)) { + case CB_CLASS_INDEX: + case CB_CLASS_POINTER: + case CB_CLASS_NUMERIC: + $$ = $1; + break; + default: + if ($1 != cb_error_node) { + cb_error_x ($1, _("an integer, INDEX, or a POINTER is expected here")); + } + $$ = cb_error_node; + } + } +| literal + { + switch (cb_tree_class ($1)) { + case CB_CLASS_INDEX: + case CB_CLASS_POINTER: + case CB_CLASS_NUMERIC: + if (!(CB_NUMERIC_LITERAL_P ($1) + && (CB_LITERAL ($1))->scale != 0)) { + $$ = $1; + break; + } + /* fall through */ + default: + if ($1 != cb_error_node) { + cb_error_x ($1, _("an integer, INDEX, or a POINTER is expected here")); + } + $$ = cb_error_node; + } + } +| ADDRESS _of prog_or_entry alnum_or_id + { + $$ = cb_build_ppointer ($4); + } +| ADDRESS _of identifier_1 + { + $$ = cb_build_address (check_not_88_level ($3)); + } +; + + + /* SET name ... UP/DOWN BY expr */ set_up_down: @@ -20056,8 +20172,9 @@ scope_terminator: _dot: TOK_DOT | { - if (! cb_verify (cb_missing_period, _("optional period"))) + if (! cb_verify (cb_missing_period, _("optional period"))) { YYERROR; + } } ; @@ -20065,8 +20182,9 @@ _dot_or_else_end_of_file_control: TOK_DOT | _file_control_end_delimiter { - if (! cb_verify (cb_missing_period, _("optional period"))) + if (! cb_verify (cb_missing_period, _("optional period"))) { YYERROR; + } cobc_repeat_last_token = 1; } ; @@ -20085,8 +20203,9 @@ _dot_or_else_end_of_file_description: | level_number_in_area_a | _file_description_end_delimiter { - if (! cb_verify (cb_missing_period, _("optional period"))) + if (! cb_verify (cb_missing_period, _("optional period"))) { YYERROR; + } cobc_repeat_last_token = 1; } ; @@ -20105,8 +20224,9 @@ _dot_or_else_end_of_record_description: | level_number_in_area_a | _record_description_end_delimiter { - if (! cb_verify (cb_missing_period, _("optional period"))) + if (! cb_verify (cb_missing_period, _("optional period"))) { YYERROR; + } cobc_repeat_last_token = 1; } ; @@ -20125,8 +20245,9 @@ _dot_or_else_area_a: /* in PROCEDURE DIVISION */ TOK_DOT | TOKEN_EOF { - if (! cb_verify (cb_missing_period, _("optional period"))) + if (! cb_verify (cb_missing_period, _("optional period"))) { YYERROR; + } } | WORD_IN_AREA_A { diff --git a/cobc/pplex.l b/cobc/pplex.l index 73c46128d..beef152ae 100644 --- a/cobc/pplex.l +++ b/cobc/pplex.l @@ -1183,120 +1183,165 @@ is_fixed_indicator (char c){ } } -/* open file (source or coypbook) for further processing */ -int -ppopen (const char *name, struct cb_replace_list *replacing_list) +/* open file with the specified 'name', then check for BOM (skipped) and if + in reference-format "auto" also for "likely free-format" */ +static FILE * +ppopen_get_file (const char *name) { struct copy_info *current_copy_info; - char *dname; - cb_tree x = NULL; - - if (ppin) { - for (; newline_count > 0; newline_count--) { - ungetc ('\n', ppin); - } - } - /* Open copy/source file, or use stdin */ + /* special case stdin; + note that we cannot handle BOM or deduce source format in this case + as rewind() clears the input buffer if used on stdin (and output in + console has normally no BOM at all), therefore compile from stdin + _has to_ specify free format if needed (or, more reasonable, use a CDF + directive to specify that) */ if (strcmp (name, COB_DASH) == 0) { - ppin = stdin; - } else { - for (current_copy_info = copy_stack; current_copy_info; current_copy_info = current_copy_info->next) { - /* FIXME: for WIN32 compare with cleaning / and \ (COPY "lib/file" vs COPY "lib\file"), - * ideally open first, then check if we have thy physical same file - * (could also fix symlinked files) */ - if (!strcmp (name, current_copy_info->dname)) { - struct cb_tree_common xc; - x = &xc; - for (current_copy_info = current_copy_info->next; current_copy_info; current_copy_info = current_copy_info->prev) { - int line; - if (current_copy_info->prev) { - line = current_copy_info->prev->line; - } else { - line = cb_source_line; - } - cb_inclusion_note (current_copy_info->dname, line); + return stdin; + } + + /* check for recursive inclusion */ + for (current_copy_info = copy_stack; current_copy_info; current_copy_info = current_copy_info->next) { + /* FIXME: for WIN32 compare with cleaning / and \ (COPY "lib/file" vs COPY "lib\file"), + * ideally open first, then check if we have the same physical file + * (would also fix recursion check for symlinked files) */ + if (!strcmp (name, current_copy_info->dname)) { + struct cb_tree_common loc; + for (current_copy_info = current_copy_info->next; current_copy_info; current_copy_info = current_copy_info->prev) { + int line; + if (current_copy_info->prev) { + line = current_copy_info->prev->line; + } else { + line = cb_source_line; } - x->source_file = name; - x->source_line = -1; - cb_error_x (x, _("recursive inclusion")); - break; + cb_inclusion_note (current_copy_info->dname, line); } - + loc.source_file = name; + loc.source_line = -1; + cb_error_x (&loc, _("recursive inclusion")); + return 0; } - if (!x) { + } + + /* try to open the file with the given name */ #ifdef __OS400__ - ppin = fopen (name, "r"); + ppin = fopen (name, "r"); #else - ppin = fopen (name, "rb"); + ppin = fopen (name, "rb"); #endif - } else { - ppin = 0; - } - } - - if (!ppin && !x) { + if (!ppin) { cb_error ("%s: %s", name, cb_get_strerror ()); /* Note: postpone error exit as we need the saved buffers later on */ + return 0; } - /* Check for BOM - *not* for input from stdin as rewind() clears the input - buffer if used on stdin and output in console has normally no BOM at all */ - if (ppin && strcmp (name, COB_DASH) != 0) { + /* Check for BOM and, if source-format was not specified, also for free-form */ + { int fseek_to = 0 ; #define COBC_LOOKAHEAD 20 unsigned char buffer[COBC_LOOKAHEAD]; int nread = fread (buffer, 1, COBC_LOOKAHEAD, ppin); - int pos = 0; + + /* check for and skip UTF-8 BOM */ if (nread >= 3 && buffer[0] == 0xEF && buffer[1] == 0xBB && buffer[2] == 0xBF) { fseek_to = 3; - pos = 3; } - if (source_format == CB_FORMAT_AUTO){ - /* If indicator is wrong on first line, switch to free format */ + + /* try to deduce source format */ + if (source_format == CB_FORMAT_AUTO) { + int pos = fseek_to; + /* if indicator is wrong on first line with source, switch to free format */ /* skip empty lines */ + char last_pos_7 = ' '; int amount_of_0a_seen = 0; - while (nread-pos > 7 && (buffer[pos] == '\r' || buffer[pos] == '\n')){ - if (buffer[pos] == '\n') amount_of_0a_seen++; + int line_pos = 0; + while (nread - pos > 7) { + switch (buffer[pos]) { + case '\r': + break; + case '\n': + amount_of_0a_seen++; + line_pos = 0; + break; + case '\t': + buffer[pos] = ' '; + line_pos++; + while (line_pos % cb_tab_width != 0) { + line_pos++; + } + break; + default: + line_pos++; + break; + } + if (line_pos >= 7) { + last_pos_7 = buffer[pos]; + break; + } pos++; } /* check tab or indicator */ - if ( nread-pos > 7 && buffer[pos] != '\t' && !is_fixed_indicator (buffer[pos+6]) ){ + if (!is_fixed_indicator (last_pos_7)) { struct cb_tree_common loc; loc.source_file = name; loc.source_line = 1 + amount_of_0a_seen; loc.source_column = 7; cb_note_x (COB_WARNOPT_NONE, &loc, _("free format detected")); - (void) cobc_deciph_source_format ("FREE"); + (void)cobc_deciph_source_format ("FREE"); } } - fseek(ppin, fseek_to, SEEK_SET); + fseek (ppin, fseek_to, SEEK_SET); + } + + return ppin; +} + +/* open file (source or coypbook) for further processing */ +int +ppopen (const char *name, struct cb_replace_list *replacing_list) +{ + struct copy_info *current_copy_info; + char *dname; + + if (ppin) { + for (; newline_count > 0; newline_count--) { + ungetc ('\n', ppin); + } } - if (source_format==CB_FORMAT_AUTO) + /* open copy/source file, or use stdin */ + ppin = ppopen_get_file (name); + + /* note: detection of free format in ppopen_get_file above (not for stdin) */ + if (source_format == CB_FORMAT_AUTO) { cobc_set_source_format (CB_FORMAT_FIXED); + } - if (cb_current_file){ - if (cb_current_file->source_format==CB_FORMAT_AUTO) - cb_current_file->source_format=cobc_get_source_format (); - /* This is delayed until after format detection */ + /* store listing information if requested */ + if (cb_current_file) { + if (cb_current_file->source_format == CB_FORMAT_AUTO) { + cb_current_file->source_format = cobc_get_source_format (); + } + /* this must be delayed until after format detection */ cobc_set_listing_header_code (); /* Save name for listing */ - if (!cb_current_file->name) + if (!cb_current_file->name) { cb_current_file->name = cobc_strdup (name); + } + cb_current_file->copy_line = cb_source_line; } - /* Add to dependency list */ + /* add opened file to dependency list */ if (cb_depend_file) { cb_depend_list = pp_text_list_add (cb_depend_list, name, strlen (name)); } - /* Preserve the current buffer */ + /* preserve the current buffer */ current_copy_info = cobc_malloc (sizeof (struct copy_info)); current_copy_info->file = cb_source_file; current_copy_info->buffer = YY_CURRENT_BUFFER; - /* Save variables */ + /* save variables */ current_copy_info->replacing = current_replace_list; current_copy_info->line = cb_source_line; current_copy_info->quotation_mark = quotation_mark; @@ -1309,11 +1354,7 @@ ppopen (const char *name, struct cb_replace_list *replacing_list) } copy_stack = current_copy_info; - if (cb_current_file) { - cb_current_file->copy_line = cb_source_line; - } - - /* Set replacing list */ + /* set replacing list */ if (replacing_list) { if (current_replace_list) { replacing_list->last->next = current_replace_list; @@ -1339,11 +1380,13 @@ ppopen (const char *name, struct cb_replace_list *replacing_list) } #endif - /* Switch to new buffer */ + /* switch to new buffer */ switch_to_buffer (1, dname, yy_create_buffer (ppin, YY_BUF_SIZE)); /* postponed errror handling */ - if (!ppin) return -1; + if (!ppin) { + return -1; + } return 0; } @@ -2610,8 +2653,11 @@ ppecho (const char *text, const cob_u32_t alt_space, const int textlen) struct cb_text_list *save_ptr_text_queue; int status, save_status; +#if 0 /* Simon: disabled until found necessary, as this takes together with frwite + a big part of the parsing phase of cobc, increasing the IO cost by numbers */ /* ensure nothing is in the stream buffer */ fflush (ppout); +#endif /* Check for replacement text before outputting */ if (alt_space) { diff --git a/cobc/reserved.c b/cobc/reserved.c index bc4c46509..acca5f4ac 100644 --- a/cobc/reserved.c +++ b/cobc/reserved.c @@ -241,6 +241,7 @@ static struct system_name_struct *lookup_system_name (const char *, const int); /* Reserved word table, note: this list is sorted on startup in (initialize_reserved_words_if_needed), no need to care for EBCDIC */ + /* Description */ /* Word # Statement has terminator # Is context sensitive (only for printing) @@ -601,7 +602,7 @@ static struct cobc_reserved default_reserved_words[] = { /* FIXME + Check: 2014 Context-sensitive to COLUMN clause */ }, { "CENTERED", 0, 1, CENTERED, /* ACU extension */ - 0, CB_CS_DISPLAY + 0, CB_CS_DISPLAY }, { "CENTERED-HEADINGS", 0, 1, CENTERED_HEADINGS, /* ACU extension */ 0, CB_CS_GRAPHICAL_CONTROL | CB_CS_INQUIRE_MODIFY @@ -3955,7 +3956,7 @@ static const unsigned char pcob_lower_val[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; #endif struct list_reserved_line { - char *word_and_status; + char *word_and_status; char *aliases; }; @@ -3963,30 +3964,32 @@ struct list_reserved_line { /* Upper-casing for reserved words. - We use cob_lower_tab (C locale table) instead of toupper for efficiency. + We use cob_lower_tab (7bit C locale table) instead of toupper for efficiency. */ static COB_INLINE COB_A_INLINE unsigned char res_toupper (unsigned char c) { - if (cob_lower_tab[c]) { - return cob_lower_tab[c]; + const unsigned char tab_entry = cob_lower_tab[c]; + if (tab_entry) { + return tab_entry; } return c; } -/* Upper-casing for reserved words using efficient C locale table lookup. */ +/* Upper-casing for reserved words using efficient 7bit C locale table lookup. */ unsigned char cb_toupper (const unsigned char c) { return res_toupper (c); } -/* Lower-casing for reserved words using efficient C locale table lookup. */ +/* Lower-casing for reserved words using efficient 7bit C locale table lookup. */ unsigned char cb_tolower (const unsigned char c) { - if (cob_upper_tab[c]) { - return cob_upper_tab[c]; + const unsigned char tab_entry = cob_upper_tab[c]; + if (tab_entry) { + return tab_entry; } return c; } @@ -4208,7 +4211,7 @@ search_reserved_list (const char * const word, const int needs_uppercasing, static char upper_word[COB_MAX_WORDLEN + 1]; size_t word_len; const char *sought_word; - struct cobc_reserved to_find; + struct cobc_reserved to_find; if (needs_uppercasing) { word_len = strlen (word) + 1; @@ -4239,19 +4242,21 @@ find_default_reserved_word (const char * const word, const int needs_uppercasing static struct cobc_reserved get_user_specified_reserved_word (struct amendment_list user_reserved) { - struct cobc_reserved cobc_reserved = create_dummy_reserved (NULL); - struct cobc_reserved *p; - - cobc_reserved.name = cobc_main_malloc (strlen (user_reserved.word) + 1); - strcpy ((char *) cobc_reserved.name, user_reserved.word); + struct cobc_reserved compiler_reserved = create_dummy_reserved (NULL); + compiler_reserved.name = cobc_main_strdup (user_reserved.word); if (!user_reserved.alias_for) { - cobc_reserved.context_sens + compiler_reserved.context_sens = !!user_reserved.is_context_sensitive; } else { - p = find_default_reserved_word (user_reserved.alias_for, 0); + struct cobc_reserved *p = find_default_reserved_word (user_reserved.alias_for, 0); if (p) { - cobc_reserved.token = p->token; + compiler_reserved.token = p->token; + if (user_reserved.is_context_sensitive) { + compiler_reserved.context_sens = + !!user_reserved.is_context_sensitive; + compiler_reserved.context_test = p->context_test; + } } else { /* FIXME: can we point to the fname originally defining the word? */ configuration_error (NULL, 0, 1, @@ -4260,7 +4265,7 @@ get_user_specified_reserved_word (struct amendment_list user_reserved) } } - return cobc_reserved; + return compiler_reserved; } static int @@ -4583,7 +4588,7 @@ get_reserved_words_with_amendments (void) add_reserved_word_to_map (reserved, 0); free_amendment_content (amendment_map[i]); - free_amendment_with_key (i); + free_amendment_with_key (i); } } @@ -4950,14 +4955,12 @@ lookup_reserved_word (const char *name) if (p->token == FUNCTION_ID) { cobc_cs_check = 0; - cobc_force_literal = 1; } else if (p->token == INTRINSIC) { if (!cobc_in_repository) { return NULL; } } else if (p->token == PROGRAM_ID) { cobc_cs_check = CB_CS_PROGRAM_ID; - cobc_force_literal = 1; } else if (p->token == REPOSITORY) { cobc_in_repository = 1; } diff --git a/cobc/scanner.l b/cobc/scanner.l index 00040867d..5d50debfd 100644 --- a/cobc/scanner.l +++ b/cobc/scanner.l @@ -1,5 +1,5 @@ /* - Copyright (C) 2001-2012, 2014-2022 Free Software Foundation, Inc. + Copyright (C) 2001-2012, 2014-2023 Free Software Foundation, Inc. Written by Keisuke Nishida, Roger While, Simon Sobisch, Edwart Hart, Ron Norman @@ -115,6 +115,7 @@ static int yywrap (void) { #define RETURN_TOK(expr) \ do { \ last_yylval = yylval; \ + second_last_token = last_token; \ last_token = (expr); \ return last_token; \ } ONCE_COB @@ -156,8 +157,12 @@ enum cb_sym_ebcdic_state { }; /* Local variables */ -static cb_tree last_yylval; -static int last_token; + +/* local history */ +static cb_tree last_yylval; /* for repeating the last token*/ +static enum yytokentype last_token; +static enum yytokentype second_last_token; /* for history purposes */ + static struct cb_level_78 *top_78_ptr = NULL; static struct cb_level_78 *const_78_ptr = NULL; static struct cb_level_78 *lev_78_ptr = NULL; @@ -168,8 +173,6 @@ static char *pic_buff2 = NULL; static size_t plex_size; static size_t pic1_size; static size_t pic2_size; -static unsigned int last_token_is_dot = 0; -static unsigned int integer_is_label = 0; static unsigned int inside_bracket = 0; static char err_msg[COB_MINI_BUFF]; @@ -215,14 +218,6 @@ AREA_A "#AREA_A"\n return last_token; } - /* We treat integer literals immediately after '.' as labels; - that is, they must be level numbers or section names. */ - if (last_token_is_dot) { - integer_is_label = 1; - last_token_is_dot = 0; - } else { - integer_is_label = 0; - } cobc_in_area_a = 0; %} @@ -414,7 +409,6 @@ AREA_A "#AREA_A"\n [''""] { /* String literal */ - cobc_force_literal = 0; read_literal (yytext[0], CB_LITERAL_DEFAULT); RETURN_TOK (LITERAL); } @@ -422,13 +416,11 @@ AREA_A "#AREA_A"\n X"\'"[^''\n]*"\'" | X"\""[^""\n]*"\"" { /* X string literal */ - cobc_force_literal = 0; RETURN_TOK (scan_x (yytext + 2, "X")); } N[''""] { - /* N national string literal */ - cobc_force_literal = 0; + /* N national string (UTF16) literal */ /* TODO: national string - needs different handling */ read_literal (yytext [1], CB_LITERAL_N); RETURN_TOK (LITERAL); @@ -437,7 +429,6 @@ N[''""] { NC[''""] { /* NC national character string literal (extension, but same handling as COBOL 2002 national string literal) */ - cobc_force_literal = 0; /* TODO: national string - needs different handling */ read_literal (yytext [2], CB_LITERAL_NC); RETURN_TOK (LITERAL); @@ -446,13 +437,11 @@ NC[''""] { NX"\'"[^''\n]*"\'" | NX"\""[^""\n]*"\"" { /* NX string literal */ - cobc_force_literal = 0; RETURN_TOK (scan_x (yytext + 3, "NX")); } U[''""] { - /* N national string literal */ - cobc_force_literal = 0; + /* UTF8 string literal */ /* TODO: utf8 string - needs different handling */ read_literal (yytext [1], CB_LITERAL_U); RETURN_TOK (LITERAL); @@ -461,42 +450,36 @@ U[''""] { UX"\'"[^''\n]*"\'" | UX"\""[^""\n]*"\"" { /* UX string literal */ - cobc_force_literal = 0; RETURN_TOK (scan_x (yytext + 3, "UX")); } Z"\'"[^''\n]*"\'" | Z"\""[^""\n]*"\"" { /* Z string literal */ - cobc_force_literal = 0; RETURN_TOK (scan_z (yytext + 2, "Z")); } L"\'"[^''\n]*"\'" | L"\""[^""\n]*"\"" { /* L string literal */ - cobc_force_literal = 0; RETURN_TOK (scan_z (yytext + 2, "L")); } H"\'"[^''\n]*"\'" | H"\""[^""\n]*"\"" { /* H hexadecimal/numeric literal */ - cobc_force_literal = 0; RETURN_TOK (scan_h (yytext + 2, "H")); } B"\'"[^''\n]*"\'" | B"\""[^""\n]*"\"" { /* B boolean/numeric literal */ - cobc_force_literal = 0; RETURN_TOK (scan_b (yytext + 2, "B")); } BX"\'"[^''\n]*"\'" | BX"\""[^""\n]*"\"" { /* BX boolean hexadecimal string literal */ - cobc_force_literal = 0; RETURN_TOK (scan_x (yytext + 3, "BX")); } @@ -507,19 +490,16 @@ B#[0-9]+ { they are processed. */ /* ACUCOBOL binary numeric literal */ - cobc_force_literal = 0; RETURN_TOK (scan_b (yytext + 2, "B#")); } O#[0-9]+ { /* ACUCOBOL octal numeric literal */ - cobc_force_literal = 0; RETURN_TOK (scan_o (yytext + 2, "O#")); } %[0-9]+ { /* HP-COBOL octal numeric literal */ - cobc_force_literal = 0; RETURN_TOK (scan_o (yytext + 1, "%")); } @@ -528,7 +508,6 @@ H#[0-9A-Za-z]+ { /* ACUCOBOL hexadecimal numeric literal */ char type[3] = "x#"; type[0] = yytext [0]; - cobc_force_literal = 0; RETURN_TOK (scan_h (yytext + 2, type)); } @@ -538,7 +517,7 @@ H#[0-9A-Za-z]+ { } \) { - if (inside_bracket > 0) { + if (inside_bracket) { inside_bracket--; } RETURN_TOK (TOK_CLOSE_PAREN); @@ -547,8 +526,9 @@ H#[0-9A-Za-z]+ { [0-9][0-9]? { int value; - cobc_force_literal = 0; - if (integer_is_label || cobc_in_area_a) { + /* We treat integer literals immediately after '.' as labels; + that is, they must be level numbers or section names. */ + if (last_token == TOK_DOT || cobc_in_area_a) { yylval = cb_build_reference (yytext); if (!cobc_in_procedure) { @@ -590,8 +570,9 @@ H#[0-9A-Za-z]+ { [0-9]+ { - cobc_force_literal = 0; - if (integer_is_label || cobc_in_area_a) { + /* We treat integer literals immediately after '.' as labels; + that is, they must be level numbers or section names. */ + if (last_token == TOK_DOT || cobc_in_area_a) { /* Integer label */ yylval = cb_build_reference (yytext); if (cobc_in_area_a) { @@ -618,7 +599,7 @@ H#[0-9A-Za-z]+ { /* Ignore */ } -<*>;+ { +<*>;+[ ]* { if (inside_bracket) { RETURN_TOK (SEMI_COLON); } @@ -640,7 +621,7 @@ H#[0-9A-Za-z]+ { RETURN_TOK (scan_numeric (yytext)); } -,+ { +,+[ ]* { if (inside_bracket) { RETURN_TOK (COMMA_DELIM); } @@ -666,6 +647,13 @@ H#[0-9A-Za-z]+ { unput (','); } +,[ ]+ { + if (inside_bracket) { + RETURN_TOK (COMMA_DELIM); + } + /* Ignore */ +} + , { if (inside_bracket) { RETURN_TOK (COMMA_DELIM); @@ -674,13 +662,11 @@ H#[0-9A-Za-z]+ { } "END"[ ,;\n]+"PROGRAM"/[ .,;\n] { - cobc_force_literal = 1; count_lines (yytext); RETURN_TOK (END_PROGRAM); } "END"[ ,;\n]+"FUNCTION"/[ .,;\n] { - cobc_force_literal = 1; count_lines (yytext); RETURN_TOK (END_FUNCTION); } @@ -1015,7 +1001,6 @@ H#[0-9A-Za-z]+ { struct cb_text_list *tlp; cb_tree x; cb_tree l; - struct cb_program *program; cb_check_word_length ((unsigned int)yyleng, yytext); @@ -1051,9 +1036,11 @@ H#[0-9A-Za-z]+ { } /* Bail early for (END) PROGRAM-ID when not a literal */ - if (cobc_force_literal) { + if ((second_last_token == PROGRAM_ID && last_token == TOK_DOT) + || (second_last_token == FUNCTION_ID && last_token == TOK_DOT) + || last_token == END_PROGRAM + || last_token == END_FUNCTION) { /* Force PROGRAM-ID / END PROGRAM */ - cobc_force_literal = 0; if (cb_fold_call) { yylval = cb_build_reference (yytext); RETURN_TOK (PROGRAM_NAME); @@ -1110,7 +1097,7 @@ H#[0-9A-Za-z]+ { /* Check user programs */ if (cobc_in_id) { - program = cb_find_defined_program_by_name (yytext); + const struct cb_program *program = cb_find_defined_program_by_name (yytext); if (program) { yylval = cb_build_reference (yytext); RETURN_TOK (PROGRAM_NAME); @@ -1214,16 +1201,41 @@ H#[0-9A-Za-z]+ { RETURN_TOK (EXPONENTIATION); } -"."([ \n]*".")* { - if (last_token_is_dot || strlen (yytext) > 1) { - cb_warning (COBC_WARN_FILLER, _("ignoring redundant .")); +"."([ \n]*".")+ { + /* note: according to the COBOL standard that is wrong as + a dot is only TOK_DOT if it is followed by [ \n] or EOF + CHECKME: switching to this would make parsing of decimals + easier - how do other compilers handle this? */ + /* note: we explicit consume multiple . here to get the right position */ + cb_warning (COBC_WARN_FILLER, _("ignoring redundant .")); + +#if 0 /* it seems there is no case because of the consume above where + the last token would be a dot */ + if (last_token != TOK_DOT) { + yylval = NULL; + RETURN_TOK (TOK_DOT); } +#else + yylval = NULL; + RETURN_TOK (TOK_DOT); +#endif +} - if (!last_token_is_dot) { - last_token_is_dot = 1; +"." { + /* note: according to the COBOL standard that is wrong as + a dot is only TOK_DOT if it is followed by [ \n] or EOF + CHECKME: switching to this would make parsing of decimals + easier - how do other compilers handle this? */ +#if 0 /* it seems there is no case because of the consume above where + the last token would be a dot, _possibly_ EOF? */ + if (last_token != TOK_DOT) { yylval = NULL; RETURN_TOK (TOK_DOT); } +#else + yylval = NULL; + RETURN_TOK (TOK_DOT); +#endif } "&" { @@ -1326,20 +1338,18 @@ H#[0-9A-Za-z]+ { <> { /* At EOF - Clear variables */ clear_constants (); - last_token_is_dot = 0; + last_token = second_last_token = 0; cobc_in_area_a = 0; - integer_is_label = 0; inside_bracket = 0; - cobc_force_literal = 0; yyterminate (); } %% static void -error_literal (const char *type, const char *literal, unsigned int literal_error) +error_literal (const char *type, const char *literal, int literal_error) { - if (!literal_error) { + if (literal_error < 1) { char lit_out[CB_ERR_LITMAX + 1] = { 0 }; /* snip literal for output, if too long or, unlikely error case, has a line break */ @@ -1359,6 +1369,8 @@ error_literal (const char *type, const char *literal, unsigned int literal_error cb_error (_("invalid numeric literal: '%s'"), lit_out); } else if (strcmp (type, "float") == 0) { cb_error (_("invalid floating-point literal: '%s'"), lit_out); + } else if (literal_error < 0) { + cb_warning (COBC_WARN_FILLER, _("invalid %s literal: '%s'"), type, lit_out); } else { cb_error (_("invalid %s literal: '%s'"), type, lit_out); } @@ -1366,7 +1378,7 @@ error_literal (const char *type, const char *literal, unsigned int literal_error } #endif } - cb_error ("%s", err_msg); + cb_note (COB_WARNOPT_NONE, 0, "%s", err_msg); } /* Scans a symbolic EBCDIC character given as a sequence of decimal digits @@ -1382,7 +1394,7 @@ scan_ebcdic_char (int c) #endif unsigned int j = 0; do { - buff[j++] = c; + buff[j++] = (char)c; } while ((c = input ()) != EOF && '0' <= c && c <= '9' && j < 10); unput (c); buff[j++] = 0; @@ -1396,21 +1408,20 @@ scan_ebcdic_char (int c) #ifdef COB_EBCDIC_MACHINE return (cob_u8_t) c; #else - if (!ebcdic_to_ascii_initialized ){ - if (cob_load_collation (cb_ebcdic_table, - ebcdic_to_ascii, - NULL) < 0) { - cb_error (_("invalid parameter: %s"), "-febcdic-table"); + if (!ebcdic_to_ascii_initialized ) { + if (cob_load_collation (cb_ebcdic_table, ebcdic_to_ascii, NULL) < 0) { + cb_error (_("invalid parameter: %s"), "-febcdic-table"); ebcdic_to_ascii_initialized = -1; - } else { + } else { ebcdic_to_ascii_initialized = 1; } } - if (ebcdic_to_ascii_initialized > 0) + if (ebcdic_to_ascii_initialized > 0) { return ebcdic_to_ascii[c]; - else + } else { return '?'; + } #endif } @@ -1418,9 +1429,9 @@ static void read_literal (const char mark, const enum cb_literal_type type) { size_t i; - int c; - unsigned int literal_error = 0; - enum cb_sym_ebcdic_state ebcdic_flag = CB_SYM_EBCDIC_INACTIVE; + int c; + int literal_error = 0; + enum cb_sym_ebcdic_state ebcdic_flag = CB_SYM_EBCDIC_INACTIVE; i = 0; /* read until a not-escaped mark is found (see break) @@ -1532,6 +1543,7 @@ read_literal (const char mark, const enum cb_literal_type type) _("national literal has zero length; a SPACE will be assumed") : _("alphanumeric literal has zero length; a SPACE will be assumed") ); + /* note: space gets UTF-16 converted down below */ plex_buff[i++] = ' '; } else if (i > cb_lit_length) { i = cb_lit_length; @@ -1547,7 +1559,7 @@ read_literal (const char mark, const enum cb_literal_type type) } else { /* poor-man's conversion iso-8859 -> utf-16 */ /* "!a0" = x'21613000' -> nx'00210061003000' */ - size_t new_size = i * 2; + size_t new_size = i * COB_NATIONAL_SIZE; if (new_size + 1 > plex_size) { plex_size = new_size + 1; plex_buff = cobc_realloc (plex_buff, plex_size); @@ -1558,7 +1570,6 @@ read_literal (const char mark, const enum cb_literal_type type) plex_buff[i * 2 + 1] = plex_buff [i]; plex_buff[i * 2] = 0; } - i = new_size; if (type != CB_LITERAL_NC) { if (cb_verify (cb_national_literals, _("national literal"))) { CB_UNFINISHED (_("national literal")); @@ -1568,7 +1579,7 @@ read_literal (const char mark, const enum cb_literal_type type) CB_UNFINISHED (_("national literal")); } } - yylval = cb_build_national_literal (plex_buff, i); + yylval = cb_build_national_literal (plex_buff, new_size); } } @@ -1581,7 +1592,7 @@ scan_x (const char *text, const char *type) size_t curr_len; size_t result_len; char c; - unsigned int literal_error = 0; + int literal_error = 0; /* Remark: The standard allows for 8,191 (normal/national/boolean) character positions */ @@ -1592,16 +1603,19 @@ scan_x (const char *text, const char *type) curr_len = strlen (text); curr_len--; if (curr_len == 0) { - cb_verify (cb_zero_length_lit, _("zero-length literal")); - memset (plex_buff, 0, 5); + /* CHECKME: should this always be active or only with x"" ? */ + (void)cb_verify (cb_zero_length_lit, _("zero-length literal")); cb_warning (COBC_WARN_FILLER, - _("hexadecimal literal has zero length; X'00' will be assumed")); + _("hexadecimal literal has zero length; X'00' will be assumed")); + memset (plex_buff, 0, 5); if (type[0] == 'B') { yylval = cb_build_numeric_literal (0, "0", 0); + (void)cb_verify (cb_hexadecimal_boolean, _("hexadecimal-boolean literal")); } else if (type[0] != 'N') { yylval = cb_build_alphanumeric_literal (plex_buff, 1); - } else { - yylval = cb_build_national_literal (plex_buff, 1); + } else /* type N */ { + (void)cb_verify (cb_national_hex_literals, _("hexadecimal-national literal")); + yylval = cb_build_national_literal (plex_buff, COB_NATIONAL_SIZE); } RETURN_TOK (LITERAL); } @@ -1617,7 +1631,9 @@ scan_x (const char *text, const char *type) } memcpy (plex_buff, text, curr_len); if (type[0] == 'X' || type [0] == 'U') { - result_len = curr_len / 2; /* characters, two half-bytes (hex) = 1 byte */ + /* characters, two half-bytes (hex) = 1 byte, add 1 halfbyte to round up + to full bytes in case of odd digits */ + result_len = (curr_len + 1) / 2; } else if (type[0] == 'B') { result_len = curr_len * 4; /* boolean characters B -> 1110 */ if (!cb_verify (cb_hexadecimal_boolean, _("hexadecimal-boolean literal"))) { @@ -1632,14 +1648,15 @@ scan_x (const char *text, const char *type) (unsigned long) result_len, 64); error_literal (type, plex_buff, literal_error++); /* we'll get an overflow below, but that's no problem, - an alternative would be to incement *text to only parse 64 / 4 + an alternative would be to increment *text to only parse 64 / 4 characters but that leads to not verified data, which is more important as the compilation will error-exit in any case */ } } else /* type N */ { result_len = curr_len / (2 * COB_NATIONAL_SIZE); if (!cb_verify (cb_national_hex_literals, _("hexadecimal-national literal"))) { - yylval = cb_build_national_literal ("", 1); + memset (plex_buff, 0, 5); + yylval = cb_build_national_literal (plex_buff, COB_NATIONAL_SIZE); RETURN_TOK (LITERAL); } else { CB_UNFINISHED (_("national literal")); @@ -1675,9 +1692,8 @@ scan_x (const char *text, const char *type) plex_buff[curr_len] = 0; } error_literal (type, plex_buff, literal_error++); - /* By not breaking immediately, we detect any following - invalid chars - */ + /* Note: by not breaking immediately, we detect any following + invalid chars */ c = 0; } val = (val << 4) + c; @@ -1705,8 +1721,8 @@ scan_x (const char *text, const char *type) plex_buff[curr_len] = 0; } error_literal (type, plex_buff, literal_error++); - /* By not breaking immediately, we detect any following - invalid chars + /* Note: by not breaking immediately, we detect any following + invalid chars */ c = 0; } @@ -1720,13 +1736,19 @@ scan_x (const char *text, const char *type) if (!high) { /* This is non-standard behaviour */ + *dst = (*dst >> 4); + dst++; snprintf (err_msg, COB_MINI_MAX, _("literal does not have an even number of digits")); if (literal_error == 0) { memcpy (plex_buff, text, curr_len + 1); plex_buff[curr_len] = 0; } - error_literal (type, plex_buff, literal_error++); + if (cb_relaxed_syntax_checks && result_len == 1) { + error_literal (type, plex_buff, literal_error++ == 0 ? -1 : 1); + } else { + error_literal (type, plex_buff, literal_error++); + } } /* TODO: for type U needs additional checks */ if (type[0] != 'N') { @@ -1747,7 +1769,7 @@ scan_z (const char *text, const char *type) if (curr_len == 1) { curr_len--; - snprintf (err_msg, COB_MINI_MAX, + snprintf (err_msg, COB_MINI_MAX, _("%s literals must contain at least one character"), type); error_literal (type, "", 0); @@ -1784,8 +1806,8 @@ scan_h (const char *text, const char *type) size_t curr_len; char *p; cob_u64_t val = 0; - int c; - unsigned int literal_error = 0; + int c; + int literal_error = 0; if (type[1] == '#' && !cb_verify (cb_acu_literals, _("ACUCOBOL numeric literal"))) { @@ -1800,7 +1822,10 @@ scan_h (const char *text, const char *type) if (type[1] != '#') { curr_len--; if (curr_len == 0) { - cb_error (_("H literals must contain at least one character")); + snprintf (err_msg, COB_MINI_MAX, + _("%s literals must contain at least one character"), + "H"); + error_literal ("H", "", 0); yylval = cb_build_numeric_literal (0, "0", 0); RETURN_TOK (LITERAL); } @@ -1866,8 +1891,8 @@ scan_b (const char *text, const char *type) size_t curr_len; char *p; cob_u64_t val = 0; - int c; - unsigned int literal_error = 0; + int c; + int literal_error = 0; /* curr_len can include the terminating quote */ curr_len = strlen (text); @@ -1880,7 +1905,7 @@ scan_b (const char *text, const char *type) if (curr_len == 1) { cb_verify (cb_zero_length_lit, _("zero-length literal")); cb_warning (COBC_WARN_FILLER, - _("Boolean literal has zero length; B'0' will be assumed")); + _("boolean literal has zero length; B'0' will be assumed")); } if (curr_len <= 1) { /* FIXME: we should really build a boolean literal... */ @@ -1907,7 +1932,7 @@ scan_b (const char *text, const char *type) (unsigned long) curr_len, 64); error_literal (type, plex_buff, literal_error++); /* we'll get an overflow below, but that's no problem, - an alternative would be to incement *text to only parse 64 / 4 + an alternative would be to increment *text to only parse 64 / 4 characters but that leads to not verified data, which is more important as the compilation will error-exit in any case */ } @@ -1953,7 +1978,7 @@ scan_o (const char *text, const char *type) cob_u64_t val = 0; char *p; char c; - unsigned int literal_error = 0; + int literal_error = 0; if (type[0] == '%') { if (!cb_verify (cb_hp_octal_literals, _("HP COBOL octal literal"))) { @@ -2009,7 +2034,6 @@ scan_o (const char *text, const char *type) #if 0 /* activate to have all %literals to be alphanumeric */ char xbuff[19]; sprintf ((char *)&xbuff, "'%X'", (unsigned int)val); - cobc_force_literal = 0; RETURN_TOK (scan_x ((const char *)&xbuff + 1, "X")); #endif } diff --git a/cobc/tree.c b/cobc/tree.c index 6e1988e3f..a8be9d9b1 100644 --- a/cobc/tree.c +++ b/cobc/tree.c @@ -1,5 +1,5 @@ /* - Copyright (C) 2001-2022 Free Software Foundation, Inc. + Copyright (C) 2001-2023 Free Software Foundation, Inc. Written by Keisuke Nishida, Roger While, Simon Sobisch, Ron Norman, Edward Hart @@ -1613,15 +1613,11 @@ cb_tree_type (const cb_tree x, const struct cb_field *f) int cb_fits_int (const cb_tree x) { - struct cb_literal *l; - struct cb_field *f; - const char *s; - const unsigned char *p; - size_t size; - switch (CB_TREE_TAG (x)) { - case CB_TAG_LITERAL: - l = CB_LITERAL (x); + case CB_TAG_LITERAL: { + const struct cb_literal *l = CB_LITERAL (x); + const unsigned char *p; + size_t size; if (l->scale > 0) { return 0; } @@ -1636,18 +1632,21 @@ cb_fits_int (const cb_tree x) } if (size > 10) { return 0; - } - if (l->sign < 0) { - s = "2147483648"; - } else { - s = "2147483647"; - } - if (memcmp (p, s, 10U) > 0) { - return 0; + } else { /* size exactly 10 */ + const char *s; + if (l->sign < 0) { + s = "2147483648"; + } else { + s = "2147483647"; + } + if (memcmp (p, s, 10U) > 0) { + return 0; + } } return 1; - case CB_TAG_FIELD: - f = CB_FIELD (x); + } + case CB_TAG_FIELD: { + const struct cb_field *f = CB_FIELD (x); if (f->children) { return 0; } @@ -1687,11 +1686,17 @@ cb_fits_int (const cb_tree x) default: return 0; } + } case CB_TAG_REFERENCE: return cb_fits_int (CB_REFERENCE (x)->value); case CB_TAG_INTEGER: return 1; + case CB_TAG_CAST: + return cb_fits_int (CB_CAST (x)->val); default: + if (x == cb_zero) { + return 1; + } return 0; } } @@ -1699,14 +1704,11 @@ cb_fits_int (const cb_tree x) int cb_fits_long_long (const cb_tree x) { - struct cb_literal *l; - struct cb_field *f; - const char *s; - const unsigned char *p; - size_t size; - switch (CB_TREE_TAG (x)) { - case CB_TAG_LITERAL: + case CB_TAG_LITERAL: { + const struct cb_literal *l = CB_LITERAL (x); + const unsigned char *p; + size_t size; l = CB_LITERAL (x); if (l->scale > 0) { return 0; @@ -1722,18 +1724,21 @@ cb_fits_long_long (const cb_tree x) } if (size > 19) { return 0; - } - if (l->sign < 0) { - s = "9223372036854775808"; - } else { - s = "9223372036854775807"; - } - if (memcmp (p, s, 19U) > 0) { - return 0; + } else { /* size exactly 19 */ + const char *s; + if (l->sign < 0) { + s = "9223372036854775808"; + } else { + s = "9223372036854775807"; + } + if (memcmp (p, s, 19U) > 0) { + return 0; + } } return 1; - case CB_TAG_FIELD: - f = CB_FIELD (x); + } + case CB_TAG_FIELD: { + const struct cb_field *f = CB_FIELD (x); if (f->children) { return 0; } @@ -1772,11 +1777,17 @@ cb_fits_long_long (const cb_tree x) default: return 0; } + } case CB_TAG_REFERENCE: return cb_fits_long_long (CB_REFERENCE (x)->value); case CB_TAG_INTEGER: return 1; + case CB_TAG_CAST: + return cb_fits_long_long (CB_CAST (x)->val); default: + if (x == cb_zero) { + return 1; + } return 0; } } @@ -2878,7 +2889,7 @@ cb_concat_literals (const cb_tree x1, const cb_tree x2) char lit_out[39] = { 0 }; literal_for_diagnostic (lit_out, (void *)p->data); cb_error_x (x1, _("invalid literal: '%s'"), lit_out); - cb_error_x (x1, _("literal length %d exceeds %d characters"), + cb_note_x (COB_WARNOPT_NONE, x1, _("literal length %d exceeds %d characters"), p->size, cb_lit_length); return cb_error_node; } @@ -3521,7 +3532,9 @@ cb_build_picture (const char *str) cob_u32_t v_count = 0; cob_u32_t digits = 0; cob_u32_t digits_exponent = 0; +#if 0 /* currently unused */ cob_u32_t real_digits = 0; +#endif cob_u32_t x_digits = 0; cob_u32_t has_parens; cob_u32_t error_detected = 0; @@ -3642,7 +3655,9 @@ cb_build_picture (const char *str) } category |= PIC_NUMERIC; digits += n; +#if 0 /* currently unused */ real_digits += n; +#endif if (v_count) { scale += n; } @@ -3726,7 +3741,6 @@ cb_build_picture (const char *str) case 'P': category |= PIC_NUMERIC; - pic->flag_has_p = 1; at_beginning = 0; at_end = 0; switch (buff_cnt) { @@ -3762,8 +3776,9 @@ cb_build_picture (const char *str) if (at_beginning) { /* Implicit V */ v_count++; + } else { + digits += n; } - digits += n; if (v_count) { scale += n; } else { @@ -3819,7 +3834,9 @@ cb_build_picture (const char *str) case '1': category |= PIC_NUMERIC; /* FIXME: this is WRONG */ digits += n; +#if 0 /* currently unused */ real_digits += n; +#endif break; case 'C': @@ -3921,7 +3938,9 @@ cb_build_picture (const char *str) pic->digits = digits; pic->scale = scale; pic->have_sign = (s_count || s_edit_count); +#if 0 /* currently unused */ pic->real_digits = real_digits; +#endif /* Set picture category */ switch (category) { @@ -4268,22 +4287,24 @@ cb_field_add (struct cb_field *f, struct cb_field *p) int cb_field_size (const cb_tree x) { - struct cb_reference *r; - struct cb_field *f; switch (CB_TREE_TAG (x)) { case CB_TAG_LITERAL: return CB_LITERAL (x)->size; - case CB_TAG_FIELD: - f = CB_FIELD (x); + case CB_TAG_FIELD: { + const struct cb_field *f = CB_FIELD (x); + if (f->flag_any_length) { + return FIELD_SIZE_UNKNOWN; + } if (f->usage == CB_USAGE_COMP_X && f->compx_size > 0) { return f->compx_size; } - return CB_FIELD (x)->size; - case CB_TAG_REFERENCE: - r = CB_REFERENCE (x); - f = CB_FIELD (r->value); + return f->size; + } + case CB_TAG_REFERENCE: { + const struct cb_reference *r = CB_REFERENCE (x); + const struct cb_field *f = CB_FIELD (r->value); if (r->length) { if (CB_LITERAL_P (r->length)) { return cb_get_int (r->length); @@ -4296,12 +4317,18 @@ cb_field_size (const cb_tree x) } else { return FIELD_SIZE_UNKNOWN; } + } else if (f->flag_any_length) { + return FIELD_SIZE_UNKNOWN; } else if (f->usage == CB_USAGE_COMP_X && f->compx_size > 0) { return f->compx_size; } else { return f->size; } + } + case CB_TAG_CONST: + /* depends on its actual usage */ + return FIELD_SIZE_UNKNOWN; /* LCOV_EXCL_START */ default: @@ -4333,11 +4360,13 @@ cb_field_variable_size (const struct cb_field *f) struct cb_field *fc; for (fc = f->children; fc; fc = fc->sister) { + if (fc->flag_picture_l) { + continue; /* seen as fixed-size */ + } if (fc->depending) { return fc; - } else if (fc->flag_picture_l) { - continue; - } else if ((p = cb_field_variable_size (fc)) != NULL) { + } + if ((p = cb_field_variable_size (fc)) != NULL) { return p; } } @@ -5571,7 +5600,7 @@ cb_ref_internal (cb_tree x, const int emit_error) c = r->chain; switch (CB_TREE_TAG (v)) { case CB_TAG_FIELD: { - struct cb_field* fld = CB_FIELD (v); + struct cb_field *fld = CB_FIELD (v); /* ignore sub-items of typedefs */ if (fld->parent != NULL && cb_field_founder (fld)->flag_is_typedef) { continue; @@ -5591,8 +5620,9 @@ cb_ref_internal (cb_tree x, const int emit_error) } /* Resolve by file or CD */ - if (c && CB_REFERENCE (c)->chain == NULL - && CB_WORD_COUNT (c) == 1) { + if (c + && CB_REFERENCE (c)->chain == NULL + && CB_WORD_COUNT (c) == 1) { cb_tree tree = cb_ref (c); if (field_is_in_file_record (tree, fld) || field_is_in_cd_record (tree, fld)) { @@ -5774,9 +5804,12 @@ display_literal (char *disp, struct cb_literal *l, int offset, int scale) return disp; } +enum cb_binary_op_flag cb_next_binary_op_flag = 0; + /* Check if comparing field to literal is always TRUE or FALSE */ static cb_tree -compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal *l) +compare_field_literal (cb_tree e, int swap, cb_tree x, + enum cb_binary_op_op op, struct cb_literal *l) { int i, j, scale, fscale; int alph_lit, zero_val; @@ -5787,8 +5820,12 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal cob_u32_t have_sign; struct cb_reference *rl; + enum cb_binary_op_flag flag = cb_next_binary_op_flag; + + cb_next_binary_op_flag = 0; + /* LCOV_EXCL_START */ - if (!CB_REFERENCE_P(x)) { + if (!CB_REFERENCE_P (x)) { cobc_err_msg (_("call to '%s' with invalid parameter '%s'"), "compare_field_literal", "x"); COBC_ABORT (); @@ -5849,9 +5886,9 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal alph_lit = 1; /* note: zero_val not checked in this case */ break; - } + } if (l->data[j] != '0') { - zero_val = 0; + zero_val = 0; } } @@ -5865,7 +5902,7 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal if (lit_length > refmod_length) { copy_file_line (e, CB_TREE(l), NULL); if (get_warn_opt_value (cb_warn_constant_expr) - && !was_prev_warn (e->source_line, 2)) { + && !was_prev_warn (e->source_line, 2)) { if (lit_length > f->size) { cb_warning_x (cb_warn_constant_expr, e, _("literal '%.38s' is longer than '%s'"), @@ -5876,11 +5913,16 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal display_literal (lit_disp, l, 0, l->scale), f->name); } } - switch (op) { - case '=': - return cb_false; - case '~': - return cb_true; + if (cb_constant_folding) { + switch (op) { + case '=': + return cb_false; + case '~': + return cb_true; + default: + /* nothing to do for constant folding */ + break; + } } } return cb_any; @@ -5937,16 +5979,21 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal && fscale < scale) { copy_file_line (e, CB_TREE(l), NULL); if (get_warn_opt_value (cb_warn_constant_expr) - && !was_prev_warn (e->source_line, 4)) { + && !was_prev_warn (e->source_line, 4)) { cb_warning_x (cb_warn_constant_expr, e, _("literal '%s' has more decimals than '%s'"), display_literal (lit_disp, l, lit_start, l->scale), f->name); } - switch (op) { - case '=': - return cb_false; - case '~': - return cb_true; + if (cb_constant_folding) { + switch (op) { + case '=': + return cb_false; + case '~': + return cb_true; + default: + /* nothing to do for constant folding */ + break; + } } } @@ -5968,6 +6015,7 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal default: break; } + flag = flag == 0 ? BOP_OPERANDS_SWAPPED : 0; } /* check for digits in literal vs. field size */ @@ -5984,20 +6032,28 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal _("literal '%s' has more digits than '%s'"), display_literal (lit_disp, l, lit_start, l->scale), f->name); } - switch (op) { - case '=': - return cb_false; - case '~': - return cb_true; - } - if (category == CB_CATEGORY_NUMERIC) { + if (cb_constant_folding) { switch (op) { - case '>': - case ']': + case '=': return cb_false; - case '<': - case '[': + case '~': return cb_true; + default: + /* nothing to do for constant folding */ + break; + } + if (category == CB_CATEGORY_NUMERIC) { + switch (op) { + case '>': + case ']': + return cb_false; + case '<': + case '[': + return cb_true; + default: + /* nothing to do for constant folding */ + break; + } } } @@ -6010,7 +6066,7 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal * be dependent on compiler configuration flags; * therefore we don't set cb_true/cb_false here */ - if (get_warn_opt_value (cb_warn_constant_expr) + if (get_warn_opt_value (cb_warn_constant_expr) != COBC_WARN_DISABLED && (op == '<' || op == '[' || op == '>' || op == ']')) { copy_file_line (e, CB_TREE(l), NULL); @@ -6027,9 +6083,11 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal break; case ']': /* don't raise a warning for VALUE THRU - (we still can return cb_true here later) */ - if (current_statement->statement != STMT_VALUE_THRU - &&!was_prev_warn (e->source_line, 5)) { + (we still can return cb_true here later), + and don't raise a warning if the bop was switched */ + if (flag != BOP_OPERANDS_SWAPPED + && current_statement->statement != STMT_VALUE_THRU + && !was_prev_warn (e->source_line, 5)) { cb_warning_x (cb_warn_constant_expr, e, _("unsigned '%s' may always be %s %s"), f->name, explain_operator (op), "ZERO"); @@ -6038,11 +6096,15 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal default: break; } - /* comparison with negative literal */ + /* comparison with negative literal */ } else if (l->sign < 0) { switch (op) { - case '<': case '[': + if (flag == BOP_OPERANDS_SWAPPED) { + break; + } + /* fall through */ + case '<': if (!was_prev_warn (e->source_line, 5)) { cb_warning_x (cb_warn_constant_expr, e, _("unsigned '%s' may not be %s %s"), @@ -6050,8 +6112,12 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal display_literal (lit_disp, l, lit_start, l->scale)); } break; - case '>': case ']': + if (flag == BOP_OPERANDS_SWAPPED) { + break; + } + /* fall through */ + case '>': if (!was_prev_warn (e->source_line, 5)) { cb_warning_x (cb_warn_constant_expr, e, _("unsigned '%s' may always be %s %s"), @@ -6083,8 +6149,12 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal /* all fine */ } else if (l->sign < 0) { switch (op) { - case '<': case '[': + if (flag == BOP_OPERANDS_SWAPPED) { + break; + } + /* fall through */ + case '<': if (!was_prev_warn (e->source_line, 5)) { cb_warning_x (cb_warn_constant_expr, e, _("'%s' may not be %s %s"), @@ -6095,7 +6165,8 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal case ']': /* don't raise a warning for VALUE THRU (we still can return cb_true here later) */ - if (current_statement->statement != STMT_VALUE_THRU + if (flag != BOP_OPERANDS_SWAPPED + && current_statement->statement != STMT_VALUE_THRU && !was_prev_warn (e->source_line, 5)) { cb_warning_x (cb_warn_constant_expr, e, _("'%s' may always be %s %s"), @@ -6108,8 +6179,12 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal } } else { switch (op) { - case '>': case ']': + if (flag == BOP_OPERANDS_SWAPPED) { + break; + } + /* fall through */ + case '>': if (!was_prev_warn (e->source_line, 5)) { cb_warning_x (cb_warn_constant_expr, e, _("'%s' may not be %s %s"), @@ -6120,7 +6195,8 @@ compare_field_literal (cb_tree e, int swap, cb_tree x, int op, struct cb_literal case '[': /* don't raise a warning for VALUE THRU (we still can return cb_true here later) */ - if (current_statement->statement != STMT_VALUE_THRU + if (flag != BOP_OPERANDS_SWAPPED + && current_statement->statement != STMT_VALUE_THRU && !was_prev_warn (e->source_line, 5)) { cb_warning_x (cb_warn_constant_expr, e, _("'%s' may always be %s %s"), @@ -6153,7 +6229,7 @@ get_warnopt_for_constant (cb_tree x, cb_tree y) } cb_tree -cb_build_binary_op (cb_tree x, const int op, cb_tree y) +cb_build_binary_op (cb_tree x, const enum cb_binary_op_op op, cb_tree y) { struct cb_binary_op *p; enum cb_category category = CB_CATEGORY_UNKNOWN; @@ -6166,7 +6242,7 @@ cb_build_binary_op (cb_tree x, const int op, cb_tree y) if (op == '@' && y == NULL - && CB_NUMERIC_LITERAL_P(x) ) /* Parens around a Numeric Literal */ + && CB_NUMERIC_LITERAL_P (x) ) /* Parens around a Numeric Literal */ return x; /* Simon: just ignore here as we already created @@ -6205,20 +6281,21 @@ cb_build_binary_op (cb_tree x, const int op, cb_tree y) * then resolve the value here at compile time -> "constant folding" */ if (cb_constant_folding - && CB_NUMERIC_LITERAL_P(x) - && CB_NUMERIC_LITERAL_P(y)) { - xl = CB_LITERAL(x); - yl = CB_LITERAL(y); + && CB_NUMERIC_LITERAL_P (x) + && CB_NUMERIC_LITERAL_P (y)) { + xl = CB_LITERAL (x); + yl = CB_LITERAL (y); xscale = xl->scale; yscale = yl->scale; - if (cb_arithmetic_osvs + if (cb_arithmetic_osvs && (xl->scale != 0 || yl->scale == 0)) { /* Do not fold with decimals for OSVS */ cb_set_dmax (xscale); cb_set_dmax (yscale); - if (op == '*') + if (op == '*') { cb_set_dmax (xscale + yscale); + } } else if (xl->llit == 0 && xl->size >= (unsigned int)xl->scale @@ -6227,9 +6304,13 @@ cb_build_binary_op (cb_tree x, const int op, cb_tree y) && xl->all == 0 && yl->all == 0) { xval = atoll((const char*)xl->data); - if(xl->sign == -1) xval = -xval; + if (xl->sign == -1) { + xval = -xval; + } yval = atoll((const char*)yl->data); - if(yl->sign == -1) yval = -yval; + if (yl->sign == -1) { + yval = -yval; + } cb_set_dmax (xscale); cb_set_dmax (yscale); rscale = 0; @@ -6257,7 +6338,7 @@ cb_build_binary_op (cb_tree x, const int op, cb_tree y) yscale--; } rscale = xscale; - if((xval % yval) == 0) { + if ((xval % yval) == 0) { rslt = xval / yval; } } @@ -6272,7 +6353,7 @@ cb_build_binary_op (cb_tree x, const int op, cb_tree y) case '+': case '-': case '*': - sprintf(result, CB_FMT_LLD, rslt); + sprintf (result, CB_FMT_LLD, rslt); return cb_build_numeric_literal (0, result, rscale); break; case '/': @@ -6281,14 +6362,14 @@ cb_build_binary_op (cb_tree x, const int op, cb_tree y) break; } if (rslt != 0) { - sprintf(result, CB_FMT_LLD, rslt); + sprintf (result, CB_FMT_LLD, rslt); return cb_build_numeric_literal (0, result, rscale); } /* only calculate simple integer numerics */ if (xl->scale != 0 || yl->scale != 0) break; - if((xval % yval) == 0) { - sprintf(result, CB_FMT_LLD, xval / yval); + if ((xval % yval) == 0) { + sprintf (result, CB_FMT_LLD, xval / yval); return cb_build_numeric_literal (0, result, rscale); } break; @@ -6298,8 +6379,8 @@ cb_build_binary_op (cb_tree x, const int op, cb_tree y) || yl->scale != 0 || yval < 0) break; - if(yval == 0 - || xval == 1) { + if (yval == 0 + || xval == 1) { strcpy(result,"1"); } else { rslt = xval; @@ -6315,8 +6396,8 @@ cb_build_binary_op (cb_tree x, const int op, cb_tree y) } } else if (cb_constant_folding - && CB_NUMERIC_LITERAL_P(y)) { - yl = CB_LITERAL(y); + && CB_NUMERIC_LITERAL_P (y)) { + yl = CB_LITERAL (y); if (yl->scale == 0) { yval = atoll((const char*)yl->data); if ((op == '+' || op == '-') @@ -6372,8 +6453,8 @@ cb_build_binary_op (cb_tree x, const int op, cb_tree y) return cb_error_node; } if (cb_constant_folding - && CB_NUMERIC_LITERAL_P(x) - && CB_NUMERIC_LITERAL_P(y)) { + && CB_NUMERIC_LITERAL_P (x) + && CB_NUMERIC_LITERAL_P (y)) { xl = CB_LITERAL(x); yl = CB_LITERAL(y); if (xl->scale == 0 @@ -6407,13 +6488,13 @@ cb_build_binary_op (cb_tree x, const int op, cb_tree y) case ']': rel_bin_op = 1; /* Relational operators */ - if ((CB_REF_OR_FIELD_P (x)) && - CB_FIELD_PTR (x)->level == 88) { + if ((CB_REF_OR_FIELD_P (x)) + && CB_FIELD_PTR (x)->level == 88) { cb_error_x (e, _("invalid expression")); return cb_error_node; } - if ((CB_REF_OR_FIELD_P (y)) && - CB_FIELD_PTR (y)->level == 88) { + if ((CB_REF_OR_FIELD_P (y)) + && CB_FIELD_PTR (y)->level == 88) { cb_error_x (e, _("invalid expression")); return cb_error_node; } @@ -6421,16 +6502,16 @@ cb_build_binary_op (cb_tree x, const int op, cb_tree y) if (x == cb_zero) { xl = CB_LITERAL(cb_zero_lit); xl->common.source_line = prev_expr_line = cb_exp_line; - } else if (CB_LITERAL_P(x)) { - xl = CB_LITERAL(x); + } else if (CB_LITERAL_P (x)) { + xl = CB_LITERAL (x); } else { xl = NULL; } if (y == cb_zero) { yl = CB_LITERAL(cb_zero_lit); yl->common.source_line = prev_expr_line = cb_exp_line; - } else if (CB_LITERAL_P(y)) { - yl = CB_LITERAL(y); + } else if (CB_LITERAL_P (y)) { + yl = CB_LITERAL (y); } else { yl = NULL; } @@ -6440,20 +6521,20 @@ cb_build_binary_op (cb_tree x, const int op, cb_tree y) (f->usage == CB_USAGE_DISPLAY || (cb_binary_truncate && (f->usage == CB_USAGE_COMP_5 - || f->usage == CB_USAGE_COMP_X - || f->usage == CB_USAGE_BINARY)) + || f->usage == CB_USAGE_COMP_X + || f->usage == CB_USAGE_BINARY)) Shouldn't it? */ if (CB_REF_OR_FIELD_P (y) && CB_FIELD_PTR (y)->usage == CB_USAGE_DISPLAY - && (CB_LITERAL_P(x) || x == cb_zero) + && (CB_LITERAL_P (x) || x == cb_zero) && xl->all == 0) { relop = compare_field_literal (e, 1, y, op, xl); } else if (CB_REF_OR_FIELD_P (x) && CB_FIELD_PTR (x)->usage == CB_USAGE_DISPLAY - && (CB_LITERAL_P(y) || y == cb_zero) + && (CB_LITERAL_P (y) || y == cb_zero) && yl->all == 0) { relop = compare_field_literal (e, 0, x, op, yl); /* @@ -6540,10 +6621,10 @@ cb_build_binary_op (cb_tree x, const int op, cb_tree y) * then resolve the value here at compile time -> "constant folding" */ } else if (cb_constant_folding - && CB_LITERAL_P(x) - && CB_LITERAL_P(y) - && !CB_NUMERIC_LITERAL_P(x) - && !CB_NUMERIC_LITERAL_P(y)) { + && CB_LITERAL_P (x) + && CB_LITERAL_P (y) + && !CB_NUMERIC_LITERAL_P (x) + && !CB_NUMERIC_LITERAL_P (y)) { copy_file_line (e, y, x); xl = CB_LITERAL(x); yl = CB_LITERAL(y); @@ -6554,12 +6635,12 @@ cb_build_binary_op (cb_tree x, const int op, cb_tree y) break; } } - if(xl->data[i] == 0 - && yl->data[j] == ' ') { + if (xl->data[i] == 0 + && yl->data[j] == ' ') { while (yl->data[j] == ' ') j++; } else - if(xl->data[i] == ' ' - && yl->data[j] == 0) { + if (xl->data[i] == ' ' + && yl->data[j] == 0) { while (xl->data[i] == ' ') i++; } switch (op) { @@ -6751,7 +6832,8 @@ cb_build_funcall (const char *name, const int argc, const cb_tree a1, const cb_tree a2, const cb_tree a3, const cb_tree a4, const cb_tree a5, const cb_tree a6, const cb_tree a7, const cb_tree a8, const cb_tree a9, - const cb_tree a10, const cb_tree a11) + const cb_tree a10, const cb_tree a11, const cb_tree a12, + const cb_tree a13, const cb_tree a14) { struct cb_funcall *p; @@ -6772,6 +6854,9 @@ cb_build_funcall (const char *name, const int argc, p->argv[8] = a9; p->argv[9] = a10; p->argv[10] = a11; + p->argv[11] = a12; + p->argv[12] = a13; + p->argv[13] = a14; return CB_TREE (p); } @@ -6864,7 +6949,7 @@ cb_build_assign (const cb_tree var, const cb_tree val) cb_tree cb_build_initialize (const cb_tree var, const cb_tree val, const cb_tree rep, const unsigned int def, - const unsigned int is_statement, + const enum cob_statement statement, const unsigned int no_filler_init) { struct cb_initialize *p; @@ -6875,7 +6960,7 @@ cb_build_initialize (const cb_tree var, const cb_tree val, const cb_tree rep, p->val = val; p->rep = rep; p->flag_default = (cob_u8_t)def; - p->flag_init_statement = (cob_u8_t)is_statement; + p->statement = statement; p->flag_no_filler_init = (cob_u8_t)no_filler_init; return CB_TREE (p); } diff --git a/cobc/tree.h b/cobc/tree.h index 8d7276018..dfdf82896 100644 --- a/cobc/tree.h +++ b/cobc/tree.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2001-2012, 2014-2022 Free Software Foundation, Inc. + Copyright (C) 2001-2012, 2014-2023 Free Software Foundation, Inc. Written by Keisuke Nishida, Roger While, Simon Sobisch, Ron Norman This file is part of GnuCOBOL. @@ -370,11 +370,13 @@ enum cb_usage { /* Cast type */ enum cb_cast_type { CB_CAST_INTEGER = 0, /* 0 */ - CB_CAST_LONG_INT, /* 1 */ - CB_CAST_ADDRESS, /* 2 */ - CB_CAST_ADDR_OF_ADDR, /* 3 */ - CB_CAST_LENGTH, /* 4 */ - CB_CAST_PROGRAM_POINTER /* 5 */ + CB_CAST_NEGATIVE_INTEGER, /* 1 */ + CB_CAST_LONG_INT, /* 2 */ + CB_CAST_NEGATIVE_LONG_INT, /* 3 */ + CB_CAST_ADDRESS, /* 4 */ + CB_CAST_ADDR_OF_ADDR, /* 5 */ + CB_CAST_LENGTH, /* 6 */ + CB_CAST_PROGRAM_POINTER /* 7 */ }; /* Intrinsic functions */ @@ -516,10 +518,10 @@ enum cb_index_type { struct cobc_reserved { const char *name; /* Word */ unsigned short nodegen; /* Statement with END-xxx */ - unsigned short context_sens; /* Context sensitive */ + unsigned short context_sens; /* Context sensitive (needed for user-amendmends) */ int token; /* Token */ - unsigned int context_set; /* Set context sensitive */ - unsigned int context_test; /* Test context sensitive */ + unsigned int context_set; /* context sensitive value set */ + unsigned int context_test; /* context sensitive value tested */ }; /* Basic common tree structure */ @@ -807,10 +809,11 @@ struct cb_picture { enum cb_category category; /* Field category */ cob_u32_t digits; /* Number of digit places */ int scale; /* 1/10^scale */ +#if 0 /* currently unused */ cob_u32_t real_digits; /* Real number of digits */ +#endif cob_u32_t have_sign; /* Have 'S' */ unsigned int flag_is_calculated : 1; /* is calculated */ - unsigned int flag_has_p : 1; /* Has PPs in PICTURE */ unsigned int variable_length : 1; /* Starts with 'L' */ }; @@ -892,6 +895,8 @@ struct cb_field { cb_tree screen_foreg; /* FOREGROUND */ cb_tree screen_backg; /* BACKGROUND */ cb_tree screen_prompt; /* PROMPT */ + cb_tree screen_control; /* CONTROL identifier (variable named attributes) */ + cb_tree screen_color; /* COLOR identifier (variable bit-shifted attributes) */ cb_tree report_source; /* SOURCE field */ cb_tree report_from; /* SOURCE field subscripted; so MOVE to report_source */ cb_tree report_sum_counter;/* SUM counter */ @@ -1035,6 +1040,10 @@ struct cb_field { #define CB_FIELD_PTR(x) \ (CB_REFERENCE_P (x) ? CB_FIELD (cb_ref (x)) : CB_FIELD (x)) +/* special values for cb_default_byte */ +#define CB_DEFAULT_BYTE_INIT -1 /* init by PICTURE/USAGE; INDEXED BY as 1 */ +#define CB_DEFAULT_BYTE_NONE -2 /* no explicit init at all */ + /* Index */ #define CB_INDEX_OR_HANDLE_P(x) cb_check_index_or_handle_p (x) @@ -1264,30 +1273,44 @@ struct cb_reference { /* Binary operation */ -/* - '+' x + y - '-' x - y - '*' x * y - '/' x / y - '^' x ** y - '=' x = y - '>' x > y - '<' x < y - '[' x <= y - ']' x >= y - '~' x != y - '!' not x - '&' x and y - '|' x or y - '@' ( x ) -*/ +enum cb_binary_op_op { + BOP_INVALID = 0, /* operation on invalid elements */ + BOP_PLUS = '+', /* x + y */ + BOP_MINUS = '-', /* x - y */ + BOP_MULT = '*', /* x * y */ + BOP_DIV = '/', /* x / y */ + BOP_POW = '^', /* x ** y */ + BOP_EQ = '=', /* x = y */ + BOP_GT = '>', /* x > y */ + BOP_LT = '<', /* x < y */ + BOP_LE = '[', /* x <= y */ + BOP_GE = ']', /* x >= y */ + BOP_NE = '~', /* x != y */ + BOP_NOT = '!', /* not x */ + BOP_AND = '&', /* x and y */ + BOP_OR = '|', /* x or y */ + BOP_PARENS = '@', /* ( x ) */ + BOP_BITWISE_NOT = 'n', /* ~ ( x ) */ + BOP_BITWISE_AND = 'a', /* ( x & y ) */ + BOP_BITWISE_OR = 'o', /* ( x | y ) */ + BOP_BITWISE_XOR = 'e', /* ( x ^ y ) */ + BOP_SHIFT_L = 'l', /* ( x << y ) */ + BOP_SHIFT_R = 'r', /* ( x >> y ) */ + BOP_SHIFT_LC = 'c', /* ( x << y circular-shift) */ + BOP_SHIFT_RC = 'd', /* ( x >> y circular-shift ) */ +}; + +enum cb_binary_op_flag { + BOP_RESOLVE_AS_INTEGER = 1, + BOP_OPERANDS_SWAPPED = 2 +}; struct cb_binary_op { struct cb_tree_common common; /* Common values */ cb_tree x; /* LHS */ cb_tree y; /* RHS */ - int op; /* Operation */ - unsigned int flag; /* Special usage */ + enum cb_binary_op_op op; /* Operation */ + enum cb_binary_op_flag flag; /* Special usage */ }; #define CB_BINARY_OP(x) (CB_TREE_CAST (CB_TAG_BINARY_OP, struct cb_binary_op, x)) @@ -1295,10 +1318,11 @@ struct cb_binary_op { /* Function call */ +#define CB_BUILD_FUNCALL_MAX 14 struct cb_funcall { struct cb_tree_common common; /* Common values */ const char *name; /* Function name */ - cb_tree argv[11]; /* Function arguments */ + cb_tree argv[CB_BUILD_FUNCALL_MAX]; /* Function arguments */ int argc; /* Number of arguments */ int varcnt; /* Variable argument count */ unsigned int screenptr; /* SCREEN usage */ @@ -1374,8 +1398,8 @@ struct cb_initialize { cb_tree var; /* Field */ cb_tree val; /* ALL (cb_true) or category (cb_int) TO VALUE */ cb_tree rep; /* Replacing */ + enum cob_statement statement; /* INITIALIZE statement */ unsigned char flag_default; /* Default */ - unsigned char flag_init_statement; /* INITIALIZE statement */ unsigned char flag_no_filler_init; /* No FILLER initialize */ unsigned char padding; /* Padding */ }; @@ -1508,6 +1532,9 @@ struct cb_attr_struct { cb_tree timeout; /* TIMEOUT */ cb_tree prompt; /* PROMPT */ cb_tree size_is; /* [PROTECTED] SIZE [IS] */ + cb_tree control; /* CONTROL [IS] (named attributes) */ + cb_tree color; /* CONTROL (bit-shifted attributes) */ + cb_tree cursor; /* CURSOR */ cob_flags_t dispattrs; /* Attributes */ }; @@ -1995,7 +2022,8 @@ struct cb_ml_suppress_clause { enum cb_ml_suppress_category category; }; -#define CB_ML_SUPPRESS(x) (CB_TREE_CAST (CB_TAG_ML_SUPPRESS, struct cb_ml_suppress_clause, x)) +#define CB_ML_SUPPRESS(x) \ + (CB_TREE_CAST (CB_TAG_ML_SUPPRESS, struct cb_ml_suppress_clause, x)) #define CB_ML_SUPPRESS_P(x) (CB_TREE_TAG (x) == CB_TAG_ML_SUPPRESS) struct cb_ml_suppress_checks { @@ -2003,7 +2031,8 @@ struct cb_ml_suppress_checks { struct cb_ml_generate_tree *tree; }; -#define CB_ML_SUPPRESS_CHECKS(x) (CB_TREE_CAST (CB_TAG_ML_SUPPRESS_CHECKS, struct cb_ml_suppress_checks, x)) +#define CB_ML_SUPPRESS_CHECKS(x) \ + (CB_TREE_CAST (CB_TAG_ML_SUPPRESS_CHECKS, struct cb_ml_suppress_checks, x)) #define CB_ML_SUPPRESS_CHECKS_P(x) (CB_TREE_TAG (x) == CB_TAG_ML_SUPPRESS_CHECKS) /* DISPLAY type */ @@ -2162,8 +2191,10 @@ extern void cb_set_system_names (void); extern cb_tree cb_ref (cb_tree); extern cb_tree cb_try_ref (cb_tree); -extern cb_tree cb_build_binary_op (cb_tree, const int, - cb_tree); +extern enum cb_binary_op_flag cb_next_binary_op_flag; /* hack for cb_build_binary_op */ + +extern cb_tree cb_build_binary_op (cb_tree, + const enum cb_binary_op_op, cb_tree); extern cb_tree cb_build_binary_list (cb_tree, const int); extern cb_tree cb_build_funcall (const char *, const int, @@ -2172,7 +2203,8 @@ extern cb_tree cb_build_funcall (const char *, const int, const cb_tree, const cb_tree, const cb_tree, const cb_tree, const cb_tree, const cb_tree, - const cb_tree); + const cb_tree, const cb_tree, + const cb_tree, const cb_tree); extern cb_tree cb_build_cast (const enum cb_cast_type, const cb_tree); @@ -2243,7 +2275,7 @@ extern cb_tree cb_build_schema_name (cb_tree); extern cb_tree cb_build_initialize (const cb_tree, const cb_tree, const cb_tree, const unsigned int, - const unsigned int, + const enum cob_statement, const unsigned int); struct cb_literal *build_literal (enum cb_category, @@ -2277,7 +2309,6 @@ extern unsigned int cobc_in_procedure; extern unsigned int cobc_in_data_division; extern unsigned int cobc_in_usage; extern unsigned int cobc_in_repository; -extern unsigned int cobc_force_literal; extern unsigned int cobc_cs_check; extern unsigned int cobc_allow_program_name; extern unsigned int cobc_in_xml_generate_body; @@ -2413,7 +2444,7 @@ extern void cb_terminate_cond (void); extern void cb_true_side (void); extern void cb_false_side (void); extern void cb_end_statement (void); -extern const char *explain_operator (const int); +extern const char *explain_operator (const enum cb_binary_op_op); extern const char *enum_explain_storage (const enum cb_storage storage); extern void cb_emit_arithmetic (cb_tree, const int, cb_tree); @@ -2667,51 +2698,63 @@ extern int cobc_has_areacheck_directive (const char *directive); #define CB_BUILD_FUNCALL_0(f) \ cb_build_funcall (f, 0, NULL, NULL, NULL, NULL, NULL, \ - NULL, NULL, NULL, NULL, NULL, NULL) + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL) #define CB_BUILD_FUNCALL_1(f,a1) \ cb_build_funcall (f, 1, a1, NULL, NULL, NULL, NULL, \ - NULL, NULL, NULL, NULL, NULL, NULL) + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL) #define CB_BUILD_FUNCALL_2(f,a1,a2) \ cb_build_funcall (f, 2, a1, a2, NULL, NULL, NULL, \ - NULL, NULL, NULL, NULL, NULL, NULL) + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL) #define CB_BUILD_FUNCALL_3(f,a1,a2,a3) \ cb_build_funcall (f, 3, a1, a2, a3, NULL, NULL, NULL, \ - NULL, NULL, NULL, NULL, NULL) + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL) #define CB_BUILD_FUNCALL_4(f,a1,a2,a3,a4) \ cb_build_funcall (f, 4, a1, a2, a3, a4, NULL, \ - NULL, NULL, NULL, NULL, NULL, NULL) + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL) #define CB_BUILD_FUNCALL_5(f,a1,a2,a3,a4,a5) \ cb_build_funcall (f, 5, a1, a2, a3, a4, a5, \ - NULL, NULL, NULL, NULL, NULL, NULL) + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL) #define CB_BUILD_FUNCALL_6(f,a1,a2,a3,a4,a5,a6) \ cb_build_funcall (f, 6, a1, a2, a3, a4, a5, a6, \ - NULL, NULL, NULL, NULL, NULL) + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL) #define CB_BUILD_FUNCALL_7(f,a1,a2,a3,a4,a5,a6,a7) \ cb_build_funcall (f, 7, a1, a2, a3, a4, a5, a6, a7, \ - NULL, NULL, NULL, NULL) + NULL, NULL, NULL, NULL, NULL, NULL, NULL) #define CB_BUILD_FUNCALL_8(f,a1,a2,a3,a4,a5,a6,a7,a8) \ cb_build_funcall (f, 8, a1, a2, a3, a4, a5, a6, a7, a8, \ - NULL, NULL, NULL) + NULL, NULL, NULL, NULL, NULL, NULL) #define CB_BUILD_FUNCALL_9(f,a1,a2,a3,a4,a5,a6,a7,a8,a9) \ cb_build_funcall (f, 9, a1, a2, a3, a4, a5, a6, a7, a8, \ - a9, NULL, NULL) + a9, NULL, NULL, NULL, NULL, NULL) #define CB_BUILD_FUNCALL_10(f,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) \ cb_build_funcall (f, 10, a1, a2, a3, a4, a5, a6, a7, a8, \ - a9, a10, NULL) + a9, a10, NULL, NULL, NULL, NULL) #define CB_BUILD_FUNCALL_11(f,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11) \ cb_build_funcall (f, 11, a1, a2, a3, a4, a5, a6, a7, a8, \ - a9, a10, a11) + a9, a10, a11, NULL, NULL, NULL) + +#define CB_BUILD_FUNCALL_12(f,a1,a2,a3,a4,a5,a6,a7,a8,a9,a11,a12) \ + cb_build_funcall (f, 9, a1, a2, a3, a4, a5, a6, a7, a8, \ + a9, a10, a11, a12, NULL, NULL) + +#define CB_BUILD_FUNCALL_13(f,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) \ + cb_build_funcall (f, 10, a1, a2, a3, a4, a5, a6, a7, a8, \ + a9, a10, a11, a12, a13, NULL) + +#define CB_BUILD_FUNCALL_14(f,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14) \ + cb_build_funcall (f, 11, a1, a2, a3, a4, a5, a6, a7, a8, \ + a9, a10, a11, a12, a13, a14) /* Miscellaneous defines */ diff --git a/cobc/typeck.c b/cobc/typeck.c index c99d7ccc2..b4a6f7525 100644 --- a/cobc/typeck.c +++ b/cobc/typeck.c @@ -61,6 +61,8 @@ struct expr_node { * '+', '-', '*', '/', '^' - arithmetic operators * '=', '~', '<', '>', '[', ']' - relational operators * '!', '&', '|' - logical operators + * 'n', 'a', 'o', 'e', - bitwise operators + * 'l', 'r', 'c', 'd' - bitshift operators * '(', ')' - parentheses */ int token; @@ -1049,6 +1051,10 @@ cb_check_numeric_name (cb_tree x) } #endif + if (CB_CAST_P (x)) { + x = CB_CAST (x)->val; + } + if (CB_REFERENCE_P (x) && CB_FIELD_P (cb_ref (x)) && CB_TREE_CATEGORY (x) == CB_CATEGORY_NUMERIC) { @@ -1144,7 +1150,7 @@ cb_check_numeric_value (cb_tree x) case CB_CATEGORY_NUMERIC_EDITED: case CB_CATEGORY_FLOATING_EDITED: { - struct cb_field *f = CB_FIELD (cb_ref(x)); + struct cb_field *f = CB_FIELD_PTR (x); if (f->report) { struct cb_field *sc = get_sum_data_field (f->report, f); if (sc) { /* Use the SUM variable instead of the print variable */ @@ -1232,13 +1238,11 @@ cb_emit_incompat_data_checks (cb_tree x) { struct cb_field *f; - /* TO-DO: Check for EC-DATA-INCOMPATIBLE checking */ - if (!x || x == cb_error_node) { return; } - if (!CB_REF_OR_FIELD_P (x) || - CB_TREE_CATEGORY (x) != CB_CATEGORY_NUMERIC) { + if (!CB_REF_OR_FIELD_P (x) + || CB_TREE_CATEGORY (x) != CB_CATEGORY_NUMERIC) { return; } f = CB_FIELD_PTR (x); @@ -1246,9 +1250,9 @@ cb_emit_incompat_data_checks (cb_tree x) cb_emit (CB_BUILD_FUNCALL_1 ("cob_correct_numeric", x)); } if (CB_EXCEPTION_ENABLE (COB_EC_DATA_INCOMPATIBLE)) { - if (f->usage == CB_USAGE_DISPLAY || - f->usage == CB_USAGE_PACKED || - f->usage == CB_USAGE_COMP_6) { + if (f->usage == CB_USAGE_DISPLAY + || f->usage == CB_USAGE_PACKED + || f->usage == CB_USAGE_COMP_6) { cb_emit (CB_BUILD_FUNCALL_2 ("cob_check_numeric", x, CB_BUILD_STRING0 (f->name))); @@ -1266,8 +1270,8 @@ cb_check_lit_subs (struct cb_reference *r, const int numsubs, int size; /* Check for DPC and non-standard separator usage */ - if (!cb_relaxed_syntax_checks || - current_program->decimal_point != ',') { + if (!cb_relaxed_syntax_checks + || current_program->decimal_point != ',') { return; } if (numsubs > numindex) { @@ -1423,8 +1427,8 @@ cb_check_field_debug (cb_tree fld) continue; } if (x == CB_PURPOSE (l)) { - if (CB_REFERENCE (fld)->flag_target || - CB_REFERENCE (CB_VALUE (l))->flag_all_debug) { + if (CB_REFERENCE (fld)->flag_target + || CB_REFERENCE (CB_VALUE (l))->flag_all_debug) { found = 1; } break; @@ -2420,16 +2424,50 @@ cb_tree cb_build_index (cb_tree x, cb_tree values, const unsigned int indexed_by, struct cb_field *qual) { + enum cb_storage storage = CB_STORAGE_WORKING; struct cb_field *f = CB_FIELD (cb_build_field (x)); + /* TODO: possibly second type which is 0-based, depending on dialect option, + see FR #428 */ f->usage = CB_USAGE_INDEX; cb_validate_field (f); f->values = values; f->index_qual = qual; f->flag_indexed_by = !!indexed_by; - if (f->flag_indexed_by) + if (f->flag_indexed_by) { f->flag_real_binary = 1; - CB_FIELD_ADD (current_program->working_storage, f); + } + if (qual) { + storage = qual->storage; + } + switch (storage) { + case CB_STORAGE_FILE: + case CB_STORAGE_WORKING: + CB_FIELD_ADD (current_program->working_storage, f); + break; + case CB_STORAGE_LINKAGE: + /* explicit: not passed -> program local -> WS / LO */ + if (current_program->flag_recursive) { + CB_FIELD_ADD (current_program->local_storage, f); + } else { + CB_FIELD_ADD (current_program->working_storage, f); + } + break; + case CB_STORAGE_SCREEN: + CB_FIELD_ADD (current_program->screen_storage, f); + break; + case CB_STORAGE_REPORT: + CB_FIELD_ADD (current_program->report_storage, f); + break; + case CB_STORAGE_LOCAL: + CB_FIELD_ADD (current_program->local_storage, f); + break; + /* LCOV_EXCL_START */ + default: + cobc_err_msg ("unexpected register storage: %d", storage); + return cb_error_node; + /* LCOV_EXCL_STOP */ + } return x; } @@ -2568,25 +2606,23 @@ cb_build_identifier (cb_tree x, const int subchk) /* CHECKME: do we need the field founder to decide? LINKAGE and flag_item_based should be available in 'f' already ... */ - if (current_statement && !suppress_data_exceptions && - (CB_EXCEPTION_ENABLE (COB_EC_DATA_PTR_NULL) || - CB_EXCEPTION_ENABLE (COB_EC_PROGRAM_ARG_OMITTED))) { + if (current_statement && !suppress_data_exceptions + && ( CB_EXCEPTION_ENABLE (COB_EC_DATA_PTR_NULL) + || CB_EXCEPTION_ENABLE (COB_EC_PROGRAM_ARG_OMITTED))) { p = cb_field_founder (f); if (p->redefines) { p = p->redefines; } + if (CB_EXCEPTION_ENABLE (COB_EC_PROGRAM_ARG_OMITTED) + && p->storage == CB_STORAGE_LINKAGE + && p->flag_is_pdiv_parm #if 0 /* note: we can only ignore the check for fields with flag_is_pdiv_opt when we check for COB_EC_PROGRAM_ARG_MISMATCH in all entry points and this check is currently completely missing... */ - if (CB_EXCEPTION_ENABLE (COB_EC_PROGRAM_ARG_OMITTED) - && p->storage == CB_STORAGE_LINKAGE && p->flag_is_pdiv_parm - && !(p->flag_is_pdiv_opt && CB_EXCEPTION_ENABLE (COB_EC_PROGRAM_ARG_MISMATCH)) { -#else - if (CB_EXCEPTION_ENABLE (COB_EC_PROGRAM_ARG_OMITTED) - && p->storage == CB_STORAGE_LINKAGE - && p->flag_is_pdiv_parm) { + && !(p->flag_is_pdiv_opt && CB_EXCEPTION_ENABLE (COB_EC_PROGRAM_ARG_MISMATCH)) #endif + ) { cb_add_null_check ("cob_check_linkage", p, f); optimize_defs[COB_CHK_LINKAGE] = 1; } else @@ -2603,9 +2639,10 @@ cb_build_identifier (cb_tree x, const int subchk) } for (l = r->subs; l; l = CB_CHAIN (l)) { - if (CB_BINARY_OP_P (CB_VALUE (l))) { + cb_tree val = CB_VALUE (l); + if (CB_BINARY_OP_P (val)) { /* Set special flag for codegen */ - CB_BINARY_OP(CB_VALUE(l))->flag = 1; + CB_BINARY_OP (val)->flag = BOP_RESOLVE_AS_INTEGER; } } @@ -3775,9 +3812,11 @@ get_size (cb_tree x) return CB_FIELD (x)->size; case CB_TAG_REFERENCE: return get_size (cb_ref (x)); + /* LCOV_EXCL_START */ default: cobc_err_msg (_("unexpected tree tag: %d"), CB_TREE_TAG (x)); return 0; + /* LCOV_EXCL_STOP */ } } @@ -5709,21 +5748,25 @@ expr_reduce (int token) * token: 'x' '*' 'x' '+' ... */ - int op; - while (expr_prio[TOKEN (-2)] <= expr_prio[token]) { - /* Reduce the expression depending on the last operator */ - op = TOKEN (-2); - switch (op) { + enum cb_binary_op_op op; + + switch (TOKEN (-2)) { case 'x': + case '(': + case ')': + /* no binary op, nothing more to do */ return 0; + default: + op = TOKEN (-2); + break; + } + + /* Reduce the expression depending on the last operator */ + switch (op) { case 'a': case 'o': case 'e': case 'l': case 'r': /* BIT-WISE */ - case '+': - case '-': - case '*': - case '/': - case '^': + case '+': case '-': case '*': case '/': case '^': /* Arithmetic operators: 'x' op 'x' */ if (TOKEN (-1) != 'x' || TOKEN (-3) != 'x') { return -1; @@ -5733,8 +5776,8 @@ expr_reduce (int token) expr_index -= 2; break; - case 'n': /* BIT-WISE */ case '!': + case 'n': /* BIT-WISE */ /* Negation: '!' 'x' */ if (TOKEN (-1) != 'x') { return -1; @@ -5771,68 +5814,101 @@ expr_reduce (int token) expr_index -= 2; break; - case '(': - case ')': - return 0; - default: - /* Relational operators */ - if (TOKEN (-1) != 'x') { - return -1; - } - switch (TOKEN (-3)) { - case 'x': - /* Simple condition: 'x' op 'x' */ - if (VALUE (-3) == cb_error_node || - VALUE (-1) == cb_error_node) { - VALUE (-3) = cb_error_node; - } else { - expr_lh = VALUE (-3); - if (expr_chk_cond (expr_lh, VALUE (-1))) { - VALUE (-3) = cb_error_node; - return 1; + { + cb_tree lhs; + /* Relational operators */ + if (TOKEN (-1) != 'x') { + return -1; + } + lhs = VALUE (-1); + + if (TOKEN (-3) == '!') { + enum cb_binary_op_op new_token = 0; + /* '!' '=' --> '~', etc. */ + switch (op) { + case '=': + new_token = '~'; + break; + case '~': + new_token = '='; + break; + case '<': + new_token = ']'; + break; + case '>': + new_token = '['; + break; + case '[': + new_token = '>'; + break; + case ']': + new_token = '<'; + break; + default: + break; } - expr_op = op; - TOKEN (-3) = 'x'; - if (CB_TREE_CLASS (VALUE (-1)) != CB_CLASS_BOOLEAN) { - VALUE (-3) = cb_build_binary_op (expr_lh, op, VALUE (-1)); -#if 0 /* Note: We loose the source reference here if - the result is true/false, for example because of - comparing 'A' = 'B'. As we now have cb_false - in VALUE (-3) we should not add the reference there. - CHECKME: Should we store the value as PAIR with a new - cb_tree containing the reference and unpack it - everywhere or is there a better option to find? - See: Test syn_misc.at - Constant Expressions (2) - */ - cb_copy_source_reference (VALUE (-3), expr_lh); -#endif - } else { - VALUE (-3) = VALUE (-1); + if (new_token != 0) { + op = new_token; + cb_next_binary_op_flag = cb_next_binary_op_flag == 0 ? BOP_OPERANDS_SWAPPED : 0; + expr_index -= 1; } } - expr_index -= 2; - break; - case '&': - case '|': - /* Complex condition: 'x' '=' 'x' '|' op 'x' */ - if (VALUE (-1) == cb_error_node) { - VALUE (-2) = cb_error_node; - } else { - expr_op = op; - TOKEN (-2) = 'x'; - if (CB_TREE_CLASS (VALUE (-1)) != CB_CLASS_BOOLEAN && expr_lh) { - VALUE (-2) = cb_build_binary_op (expr_lh, op, VALUE (-1)); + /* Fall-through */ + switch (TOKEN (-3)) { + case 'x': + /* Simple condition: 'x' op 'x' */ + if (VALUE (-3) == cb_error_node || + lhs == cb_error_node) { + VALUE (-3) = cb_error_node; + } else { + expr_lh = VALUE (-3); + if (expr_chk_cond (expr_lh, lhs)) { + VALUE (-3) = cb_error_node; + return 1; + } + expr_op = op; + TOKEN (-3) = 'x'; + if (CB_TREE_CLASS (lhs) != CB_CLASS_BOOLEAN) { + VALUE (-3) = cb_build_binary_op (expr_lh, op, lhs); +#if 0 /* Note: We loose the source reference here if + the result is true/false, for example because of + comparing 'A' = 'B'. As we now have cb_false + in VALUE (-3) we should not add the reference there. + CHECKME: Should we store the value as PAIR with a new + cb_tree containing the reference and unpack it + everywhere or is there a better option to find? + See: Test syn_misc.at - Constant Expressions (2) + */ + cb_copy_source_reference (VALUE (-3), expr_lh); +#endif + } else { + VALUE (-3) = lhs; + } + } + expr_index -= 2; + break; + case '&': + case '|': + /* Complex condition: 'x' '=' 'x' '|' op 'x' */ + if (lhs == cb_error_node) { + VALUE (-2) = cb_error_node; } else { - VALUE (-2) = VALUE (-1); + expr_op = op; + TOKEN (-2) = 'x'; + if (CB_TREE_CLASS (lhs) != CB_CLASS_BOOLEAN && expr_lh) { + VALUE (-2) = cb_build_binary_op (expr_lh, op, lhs); + } else { + VALUE (-2) = lhs; + } } + expr_index -= 1; + break; + default: + return -1; } - expr_index -= 1; break; - default: - return -1; } - break; } } @@ -5920,8 +5996,8 @@ cb_expr_shift (int token, cb_tree value) } /* Unary sign */ - if ((TOKEN (-1) == '+' || TOKEN (-1) == '-') && - TOKEN (-2) != 'x') { + if ((TOKEN (-1) == '+' || TOKEN (-1) == '-') + && TOKEN (-2) != 'x') { if (TOKEN (-1) == '-') { value = cb_build_binary_op (cb_zero, '-', value); } @@ -5980,38 +6056,6 @@ cb_expr_shift (int token, cb_tree value) token = (TOKEN (-2) == '<') ? '[' : ']'; expr_index -= 2; } - - /* '!' '=' --> '~', etc. */ - if (TOKEN (-1) == '!') { - switch (token) { - case '=': - token = '~'; - expr_index--; - break; - case '~': - token = '='; - expr_index--; - break; - case '<': - token = ']'; - expr_index--; - break; - case '>': - token = '['; - expr_index--; - break; - case '[': - token = '>'; - expr_index--; - break; - case ']': - token = '<'; - expr_index--; - break; - default: - break; - } - } break; } @@ -6077,7 +6121,6 @@ cb_expr_finish (void) expr_expand (&expr_stack[3].value); if (expr_stack[3].token != 'x') { - /* TODO: Add test case for this to syn_misc.at invalid expression */ cb_error_x (expr_stack[3].value, _("invalid expression")); return cb_error_node; } @@ -6214,7 +6257,7 @@ cb_build_expr (cb_tree list) } const char * -explain_operator (const int op) +explain_operator (const enum cb_binary_op_op op) { switch (op) { case '>': @@ -6279,12 +6322,10 @@ enum_explain_storage (const enum cb_storage storage) static cb_tree build_store_option (cb_tree x, cb_tree round_opt) { - struct cb_field *f; + const struct cb_field *f = CB_FIELD_PTR (x); + const enum cb_usage usage = f->usage; int opt; - enum cb_usage usage; - f = CB_FIELD_PTR (x); - usage = f->usage; #if 0 /* RXWRXW - FP */ if (usage == CB_USAGE_LONG_DOUBLE || usage == CB_USAGE_DOUBLE @@ -6635,7 +6676,7 @@ decimal_expand (cb_tree d, cb_tree x) decimal_expand (d, p->x); if (CB_TREE_TAG (p->y) == CB_TAG_LITERAL - && CB_TREE_CATEGORY (p->y) == CB_CATEGORY_NUMERIC) { + && CB_TREE_CATEGORY (p->y) == CB_CATEGORY_NUMERIC) { t = cb_build_decimal_literal (cb_lookup_literal(p->y,1)); decimal_compute (p->op, d, t); } else { @@ -6829,19 +6870,21 @@ cb_emit_arithmetic (cb_tree vars, const int op, cb_tree val) cb_tree l; cb_emit_incompat_data_checks (x); for (l = vars; l; l = CB_CHAIN (l)) { - cb_emit_incompat_data_checks (CB_VALUE (l)); + const cb_tree target = CB_VALUE(l); + const cb_tree round_and_trunc = CB_PURPOSE(l); + cb_emit_incompat_data_checks (target); switch (op) { case '+': - CB_VALUE (l) = cb_build_add (CB_VALUE (l), x, CB_PURPOSE (l)); + CB_VALUE (l) = cb_build_add (target, x, round_and_trunc); break; case '-': - CB_VALUE (l) = cb_build_sub (CB_VALUE (l), x, CB_PURPOSE (l)); + CB_VALUE (l) = cb_build_sub (target, x, round_and_trunc); break; case '*': - CB_VALUE (l) = cb_build_mul (CB_VALUE (l), x, CB_PURPOSE (l)); + CB_VALUE (l) = cb_build_mul (target, x, round_and_trunc); break; case '/': - CB_VALUE (l) = cb_build_div (CB_VALUE (l), x, CB_PURPOSE (l)); + CB_VALUE (l) = cb_build_div (target, x, round_and_trunc); break; } } @@ -6913,76 +6956,122 @@ build_cond_88 (cb_tree x) static cb_tree cb_build_optim_cond (struct cb_binary_op *p) { - struct cb_field *f; const char *s; size_t n; + const cb_tree left = p->x; + const cb_tree right = p->y; + struct cb_field *f = CB_REF_OR_FIELD_P (left) + ? CB_FIELD_PTR (left) : NULL; #if 0 /* RXWRXW - US */ - struct cb_field *fy; - if (CB_REF_OR_FIELD_P (p->y)) { - fy = CB_FIELD_PTR (p->y); + if (CB_REF_OR_FIELD_P (right)) { + const struct cb_field *fy = CB_FIELD_PTR (right); if (!fy->pic->have_sign && (fy->usage == CB_USAGE_BINARY || fy->usage == CB_USAGE_COMP_5 || fy->usage == CB_USAGE_COMP_X || fy->usage == CB_USAGE_COMP_N)) { - return CB_BUILD_FUNCALL_2 ("cob_cmp_uint", p->x, - cb_build_cast_int (p->y)); + return CB_BUILD_FUNCALL_2 ("cob_cmp_uint", left, + cb_build_cast_int (right)); } } #endif - if (!CB_REF_OR_FIELD_P (p->x)) { - return CB_BUILD_FUNCALL_2 ("cob_cmp_llint", p->x, - cb_build_cast_llint (p->y)); + if (f == NULL) { + if (!cb_fits_long_long (right)) { + return NULL; + } + return CB_BUILD_FUNCALL_2 ("cob_cmp_llint", left, + cb_build_cast_llint (right)); } - f = CB_FIELD_PTR (p->x); -#if 0 /* CHECKME, if needed */ - if (cb_listing_xref) { - cobc_xref_link (&f->xref, current_statement->common.source_line); +#if 0 /* TODO: if the right side is a literal: then build an ideal + memcmp as if it was a field of same attributes as left-side, + with the value of the literal */ + if (CB_LITERAL_P (right) || right == cb_zero) { + if (f->usage == CB_USAGE_PACKED + || f->usage == CB_USAGE_COMP_6) { + return CB_BUILD_FUNCALL_3 ("memcmp", + CB_BUILD_CAST_ADDRESS (left), + cb_build_direct (get_hex_encoded_packed_literal (right), 0), + cb_int (f->size)); + } } #endif + if (f->usage == CB_USAGE_PACKED + || f->usage == CB_USAGE_COMP_6) { + if (CB_REF_OR_FIELD_P (right)) { + const struct cb_field *fy = CB_FIELD_PTR (right); + if (fy->usage == CB_USAGE_PACKED + || fy->usage == CB_USAGE_COMP_6) { + if (f->pic->scale + || f->pic->digits >= 19 + || fy->pic->scale + || fy->pic->digits >= 19 + ) { + if (f->pic->scale >= 0 && fy->pic->scale >= 0) { + /* for now skip negative scale, until this is added and tested */ + return CB_BUILD_FUNCALL_2 ("cob_bcd_cmp", left, right); + } + } + } + } + } + + if (!cb_fits_long_long (right)) { + return NULL; + } + #if 0 /* RXWRXW - SI */ if (f->index_type) { - return CB_BUILD_FUNCALL_2 ("cob_cmp_special", - cb_build_cast_int (p->x), - cb_build_cast_int (p->y)); + return CB_BUILD_FUNCALL_2 ("c", + cb_build_cast_int (left), + cb_build_cast_int (right)); } #endif if (f->pic->scale || f->flag_any_numeric) { - return CB_BUILD_FUNCALL_2 ("cob_cmp_llint", p->x, - cb_build_cast_llint (p->y)); + return CB_BUILD_FUNCALL_2 ("cob_cmp_llint", left, + cb_build_cast_llint (right)); } +#if 0 /* libcob's optimized version "cob_cmp_packed" is not slower, + so drop these specific local optimization functions */ if (f->usage == CB_USAGE_PACKED) { if (f->pic->digits < 19) { optimize_defs[COB_CMP_PACKED_INT] = 1; return CB_BUILD_FUNCALL_2 ("cob_cmp_packed_int", - p->x, - cb_build_cast_llint (p->y)); + left, + cb_build_cast_llint (right)); } else { return CB_BUILD_FUNCALL_2 ("cob_cmp_packed", - p->x, - cb_build_cast_llint (p->y)); + left, + cb_build_cast_llint (right)); } } if (f->usage == CB_USAGE_COMP_6) { return CB_BUILD_FUNCALL_2 ("cob_cmp_packed", - p->x, - cb_build_cast_llint (p->y)); + left, + cb_build_cast_llint (right)); + } +#else + if (f->usage == CB_USAGE_PACKED + || f->usage == CB_USAGE_COMP_6) { + return CB_BUILD_FUNCALL_2 ("cob_cmp_packed", + left, + cb_build_cast_llint (right)); } +#endif if (f->usage == CB_USAGE_DISPLAY && !f->flag_sign_leading && !f->flag_sign_separate) { - if (cb_fits_long_long (p->x)) { + if (cb_fits_long_long (left)) { return CB_BUILD_FUNCALL_4 ("cob_cmp_numdisp", - CB_BUILD_CAST_ADDRESS (p->x), + CB_BUILD_CAST_ADDRESS (left), cb_int (f->size), - cb_build_cast_llint (p->y), + cb_build_cast_llint (right), cb_int (f->pic->have_sign ? 1 : 0)); } - return CB_BUILD_FUNCALL_2 ("cob_cmp_llint", p->x, - cb_build_cast_llint (p->y)); + return CB_BUILD_FUNCALL_2 ("cob_cmp_llint", left, + cb_build_cast_llint (right)); } if (f->usage == CB_USAGE_BINARY || f->usage == CB_USAGE_COMP_5 @@ -6998,8 +7087,8 @@ cb_build_optim_cond (struct cb_binary_op *p) || f->usage == CB_USAGE_COMP_X || f->usage == CB_USAGE_COMP_N) { n = ((size_t)f->size - 1) - + (8 * (f->pic->have_sign ? 1 : 0)) - + (16 * (f->flag_binary_swap ? 1 : 0)); + + ((f->pic->have_sign ? 1 : 0) * 8) + + ((f->flag_binary_swap ? 1 : 0) * 16); #if defined(COB_NON_ALIGNED) && !defined(_MSC_VER) && defined(COB_ALLOW_UNALIGNED) switch (f->size) { case 2: @@ -7010,8 +7099,9 @@ cb_build_optim_cond (struct cb_binary_op *p) #endif case 4: case 8: - if (f->storage != CB_STORAGE_LINKAGE && - f->indexes == 0 && (f->offset % f->size) == 0) { + if (f->storage != CB_STORAGE_LINKAGE + && f->indexes == 0 + && (f->offset % f->size) == 0) { optimize_defs[align_bin_compare_funcs[n].optim_val] = 1; s = align_bin_compare_funcs[n].optim_name; } else { @@ -7030,12 +7120,12 @@ cb_build_optim_cond (struct cb_binary_op *p) #endif if (s) { return CB_BUILD_FUNCALL_2 (s, - CB_BUILD_CAST_ADDRESS (p->x), - cb_build_cast_llint (p->y)); + CB_BUILD_CAST_ADDRESS (left), + cb_build_cast_llint (right)); } } - return CB_BUILD_FUNCALL_2 ("cob_cmp_llint", p->x, - cb_build_cast_llint (p->y)); + return CB_BUILD_FUNCALL_2 ("cob_cmp_llint", left, + cb_build_cast_llint (right)); } static int @@ -7049,26 +7139,45 @@ cb_check_num_cond (cb_tree x, cb_tree y) return 0; } if (CB_TREE_CATEGORY (x) != CB_CATEGORY_NUMERIC - || CB_TREE_CATEGORY (y) != CB_CATEGORY_NUMERIC) { - return 0; - } - if (CB_TREE_CLASS (x) != CB_CLASS_NUMERIC + || CB_TREE_CATEGORY (y) != CB_CATEGORY_NUMERIC + || CB_TREE_CLASS (x) != CB_CLASS_NUMERIC || CB_TREE_CLASS (y) != CB_CLASS_NUMERIC) { return 0; } fx = CB_FIELD_PTR (x); fy = CB_FIELD_PTR (y); - if (fx->usage != CB_USAGE_DISPLAY - || fy->usage != CB_USAGE_DISPLAY) { + if (fx->usage != fy->usage) { return 0; } - if (fx->pic->have_sign || fy->pic->have_sign) { - return 0; - } - if (fx->size != fy->size) { + if (fx->usage == CB_USAGE_DISPLAY) { + if (fx->pic->have_sign + || fy->pic->have_sign) { + return 0; + } +#if 0 /* possibly add this with an optimizing flag + which isn't active by default; previously we + did what MF also does: only consider a + sign nibble of 0x0d as negative, and the rest + as positive -> 0x195f == 0x195c (and even 0x1950) + */ + } else if (fx->usage == CB_USAGE_PACKED) { + if (fx->pic->have_sign != fy->pic->have_sign) { + return 0; + } + /* needs following attribute check to decide */; +#endif + /* no sign nibble so directly comparable; + note: previous versions of GnuCOBOL did handle + invalid data with padding nibble different, + PIC 9 COMP-6 with 0x11 == 0x01, which isn't done now + any more (note: this is identical to at least MicroFocus) */ + } else if (fx->usage == CB_USAGE_COMP_6) { + /* needs following attribute check to decide */; + } else { return 0; } - if (fx->pic->scale != fy->pic->scale) { + if (fx->pic->digits != fy->pic->digits /* digits instead of size to cater for packed */ + || fx->pic->scale != fy->pic->scale) { return 0; } return 1; @@ -7077,25 +7186,25 @@ cb_check_num_cond (cb_tree x, cb_tree y) static int cb_check_alpha_cond (cb_tree x) { - if (current_program->alphabet_name_list) { - return 0; - } - if (CB_LITERAL_P (x)) { + if (CB_LITERAL_P (x) + || CB_CONST_P (x)) { return 1; } - if (!CB_REF_OR_FIELD_P (x)) { - return 0; - } - if (CB_TREE_CATEGORY (x) != CB_CATEGORY_ALPHANUMERIC - && CB_TREE_CATEGORY (x) != CB_CATEGORY_ALPHABETIC) { + if (CB_REF_OR_FIELD_P (x)) { + const enum cb_category cat = CB_TREE_CATEGORY (x); + if (cat != CB_CATEGORY_ALPHANUMERIC + && cat != CB_CATEGORY_ALPHABETIC) { + /* CHECKME: Shouldn't _EDITED fields lead to + alphanumeric comparision, too ? + */ + return 0; + } + } else { return 0; } if (cb_field_variable_size (CB_FIELD_PTR (x))) { return 0; } - if (cb_field_size (x) == FIELD_SIZE_UNKNOWN) { - return 0; - } return 1; } @@ -7150,17 +7259,254 @@ cb_walk_cond (cb_tree x) } } +/* Field comparison */ +static cb_tree +cb_build_cond_fields (struct cb_binary_op *p, + cb_tree left, cb_tree right, const enum cb_class l_class) +{ + const enum cb_category x_cat = CB_TREE_CATEGORY (left); + const int size1 = cb_field_size (left); + const int size2 = cb_field_size (right); + + if ((CB_REF_OR_FIELD_P (left)) + && (x_cat == CB_CATEGORY_ALPHANUMERIC + || x_cat == CB_CATEGORY_ALPHABETIC) + && size1 == 1 + && (right == cb_space || right == cb_zero + || right == cb_high || right == cb_low)) { + return CB_BUILD_FUNCALL_2 ("$G", left, right); + } + if (size1 == 1 && size2 == 1) { + return CB_BUILD_FUNCALL_2 ("$G", left, right); + } + if (size1 > 0 && size1 == size2) { + return CB_BUILD_FUNCALL_3 ("memcmp", + CB_BUILD_CAST_ADDRESS (left), + CB_BUILD_CAST_ADDRESS (right), + cb_int (size1)); + } + if (right == cb_zero && l_class == CB_CLASS_NUMERIC) { + return cb_build_optim_cond (p); + } + if (right == cb_space + && (l_class == CB_CLASS_ALPHANUMERIC || l_class == CB_CLASS_ALPHABETIC) + && (size1 > 0 && size1 <= COB_SPACES_ALPHABETIC_BYTE_LENGTH)) { + return CB_BUILD_FUNCALL_3 ("memcmp", + CB_BUILD_CAST_ADDRESS (left), + cb_build_direct ("COB_SPACES_ALPHABETIC", 0), + cb_int (size1)); + } + if (right == cb_zero + && (l_class == CB_CLASS_ALPHANUMERIC || l_class == CB_CLASS_ALPHABETIC) + && (size1 > 0 && size1 <= COB_ZEROES_ALPHABETIC_BYTE_LENGTH)) { + return CB_BUILD_FUNCALL_3 ("memcmp", + CB_BUILD_CAST_ADDRESS (left), + cb_build_direct ("COB_ZEROES_ALPHABETIC", 0), + cb_int (size1)); + } + +#if 0 /* TODO: if at least one is a literal and smaller: + possibly extend by building a new literal correctly + left/right padded with system SPACE allowing direct memcmp; + not useful for PIC X(12000) and a 2 byte literal, + but likely useful for PIC X(10) or X(32) or ??? */ +#define COB_SPACES_ALPHABETIC_EXPAND_LENGTH 32 + if (CB_LITERAL_P (right) + && (l_class == CB_CLASS_ALPHANUMERIC || l_class == CB_CLASS_ALPHABETIC) + && size1 > 0 && size1 <= COB_SPACES_ALPHABETIC_EXPAND_LENGTH + && size2 <= COB_SPACES_ALPHABETIC_EXPAND_LENGTH) { + cb_tree new_lit, lit; + char data [COB_SPACES_ALPHABETIC_EXPAND_LENGTH + 1]; + memcpy (data, CB_LITERAL (right)->data, size2); + if (size2 < COB_SPACES_ALPHABETIC_EXPAND_LENGTH) { + memset (data, ' ', size1 - size2); + } + new_lit = cb_build_alphanumeric_literal (data, size1); + lit = cb_lookup_literal (new_lit, 0); + return CB_BUILD_FUNCALL_3 ("memcmp", + CB_BUILD_CAST_ADDRESS (left), + CB_BUILD_CAST_ADDRESS (lit), + cb_int (size1)); + } +#endif + return CB_BUILD_FUNCALL_2 ("cob_cmp", left, right); +} + +static cb_tree +cb_build_cond_default (struct cb_binary_op *p, cb_tree left, cb_tree right) +{ + const enum cb_class l_class = CB_TREE_CLASS (left); + const enum cb_class r_class = CB_TREE_CLASS (right); + + int has_any_len = 0; + + if (CB_TREE_TAG (left) == CB_TAG_DECIMAL) { + cb_tree d2; + cb_tree ret; + if (CB_TREE_TAG (right) == CB_TAG_LITERAL + && CB_TREE_CATEGORY (right) == CB_CATEGORY_NUMERIC) { + d2 = cb_build_decimal_literal (cb_lookup_literal(right,1)); + dpush (CB_BUILD_FUNCALL_2 ("cob_decimal_cmp", left, d2)); + } else { + d2 = decimal_alloc (); + decimal_expand (d2, right); + dpush (CB_BUILD_FUNCALL_2 ("cob_decimal_cmp", left, d2)); + decimal_free (); + } + ret = cb_list_reverse (decimal_stack); + decimal_stack = NULL; + return ret; + } + + if (CB_REF_OR_FIELD_P (left)) { + struct cb_field *f = CB_FIELD_PTR (left); + if (f->flag_any_length) { + has_any_len = 1; + } + } + + if (CB_BINARY_OP_P (left) + || CB_BINARY_OP_P (right)) { + /* Decimal comparison */ + cb_tree ret; + cb_tree d1; + cb_tree d2; + if (cb_is_integer_expr (CB_TREE (p))) { + ret = cb_build_optim_cond (p); + if (ret) { + return ret; + } + } + d1 = decimal_alloc (); + d2 = decimal_alloc (); + decimal_expand (d1, left); + decimal_expand (d2, right); + dpush (CB_BUILD_FUNCALL_2 ("cob_decimal_cmp", d1, d2)); + decimal_free (); + decimal_free (); + ret = cb_list_reverse (decimal_stack); + decimal_stack = NULL; + return ret; + } + +#if 0 /* possibly add check of classes of the two operands, note that there + are a lot of defined comparisions in the standard 8.8.4.1.1 relation + conditions, with explicit comparision of class alphanumeric (where + all edited items go to) and of class numeric; so likely only do this + with a new warning only enabled with -Wextra. */ + if (get_warn_opt_value (cb_warn_strict_typing) != COBC_WARN_DISABLED) { + if (cb_tree_class_are_something (left, right)) { + cb_warning_x (cb_warn_strict_typing, + CB_TREE (p), _("alphanumeric value is expected")); + } else { + cb_warning_x (cb_warn_strict_typing, + CB_TREE(p), _("numeric value is expected")); + } + } +#endif + + if (CB_INDEX_OR_HANDLE_P (left) + || CB_INDEX_OR_HANDLE_P (right) + || l_class == CB_CLASS_POINTER + || r_class == CB_CLASS_POINTER) { + return cb_build_binary_op (left, '-', right); + } + + /* DEBUG Bypass optimization for PERFORM and upon request */ + if (current_program->flag_debugging + || !cb_flag_fast_compare) { + return CB_BUILD_FUNCALL_2 ("cob_cmp", left, right); + } + + if (cb_check_num_cond (left, right)) { + const int size1 = cb_field_size (left); + return CB_BUILD_FUNCALL_3 ("memcmp", + CB_BUILD_CAST_ADDRESS (left), + CB_BUILD_CAST_ADDRESS (right), + cb_int (size1)); + } + + if (p->op == '=' + || p->op == '~' + || p->op == '>' + || p->op == '<' + || p->op == ']' + || p->op == '[') { + int_usage = CB_USAGE_PACKED; + if (l_class == CB_CLASS_NUMERIC + && r_class == CB_CLASS_NUMERIC + && CB_TREE_TAG (left) == CB_TAG_LITERAL + && CB_TREE_TAG (right) == CB_TAG_REFERENCE) { /* literal relop field */ + cb_tree d1; + d1 = p->x; + p->x = p->y; /* Swap operands */ + p->y = d1; + left = p->x; + right = p->y; + if (p->op == '>') + p->op = '<'; + else if (p->op == '<') + p->op = '>'; + else if (p->op == '[') + p->op = ']'; + else if (p->op == ']') + p->op = '['; + } + } else { + int_usage = -1; + } + + if (l_class == CB_CLASS_NUMERIC + && r_class == CB_CLASS_NUMERIC) { + cb_tree ret; + if (CB_REF_OR_FIELD_P (left)) { + struct cb_field *f = CB_FIELD_PTR (left); + if (cb_is_integer_field_and_int (f, right) + && cb_fits_int (right)) { + /* 'native' (short/int/long) on SYNC boundary */ + int_usage = -1; + ret = CB_BUILD_FUNCALL_3 ("$:", left, (cb_tree)(long)p->op, right); + cb_copy_source_reference (ret, CB_TREE (p)); + return ret; + } + } + int_usage = -1; + ret = cb_build_optim_cond (p); + if (ret) { + return ret; + } + } + int_usage = -1; + + if (current_program->alphabet_name_list + || has_any_len + || !cb_check_alpha_cond (left) + || !cb_check_alpha_cond (right)) { + return CB_BUILD_FUNCALL_2 ("cob_cmp", left, right); + } + return cb_build_cond_fields (p, left, right, l_class); +} + +static void +swap_condition_operands (struct cb_binary_op *p) +{ + cb_tree y = p->x; + + p->flag = p->flag == 0 ? BOP_OPERANDS_SWAPPED : 0; + + p->x = p->y; + p->y = y; + + if (p->op == '>') p->op = '<'; + else if (p->op == '<') p->op = '>'; + else if (p->op == '[') p->op = ']'; + else if (p->op == ']') p->op = '['; +} + cb_tree cb_build_cond (cb_tree x) { - struct cb_field *f; - struct cb_binary_op *p; - cb_tree d1; - cb_tree d2; cb_tree ret; - int has_any_len = 0; - int size1; - int size2; if (x == cb_error_node) { return cb_error_node; @@ -7170,8 +7516,8 @@ cb_build_cond (cb_tree x) /* ARITHMETIC-OSVS: Determine largest scale used in condition */ if (expr_dmax == -1) { /* FIXME: this is a hack, x should always be a list! */ - if (CB_LIST_P(x)) { - expr_rslt = CB_VALUE(x); + if (CB_LIST_P (x)) { + expr_rslt = CB_VALUE (x); } else { expr_rslt = x; } @@ -7195,16 +7541,16 @@ cb_build_cond (cb_tree x) case CB_TAG_FUNCALL: return x; case CB_TAG_REFERENCE: - if (!CB_FIELD_P (cb_ref (x))) { - ret = cb_build_cond (cb_ref (x)); + { + cb_tree r = cb_ref (x); + if (!CB_FIELD_P (r)) { + ret = cb_build_cond (r); cb_copy_source_reference (ret, x); return ret; } - f = CB_FIELD_PTR (x); - /* Level 88 condition */ - if (f->level == 88) { + if (CB_FIELD_PTR (x)->level == 88) { /* Build an 88 condition at every occurrence */ /* as it may be subscripted */ ret = cb_build_cond (build_cond_88 (x)); @@ -7213,185 +7559,49 @@ cb_build_cond (cb_tree x) } break; + } case CB_TAG_BINARY_OP: - p = CB_BINARY_OP (x); + { + struct cb_binary_op *p = CB_BINARY_OP (x); if (!p->x || p->x == cb_error_node) { return cb_error_node; } switch (p->op) { case '!': ret = CB_BUILD_NEGATION (cb_build_cond (p->x)); - goto return_ret; + break; case '&': case '|': if (!p->y || p->y == cb_error_node) { return cb_error_node; } ret = cb_build_binary_op (cb_build_cond (p->x), p->op, cb_build_cond (p->y)); - goto return_ret; + break; default: if (!p->y || p->y == cb_error_node) { return cb_error_node; } - f = NULL; - if (CB_TREE_TAG (p->x) == CB_TAG_DECIMAL) { - if (CB_TREE_TAG (p->y) == CB_TAG_LITERAL - && CB_TREE_CATEGORY (p->y) == CB_CATEGORY_NUMERIC) { - d2 = cb_build_decimal_literal (cb_lookup_literal(p->y,1)); - dpush (CB_BUILD_FUNCALL_2 ("cob_decimal_cmp", p->x, d2)); - } else { - d2 = decimal_alloc (); - decimal_expand (d2, p->y); - dpush (CB_BUILD_FUNCALL_2 ("cob_decimal_cmp", p->x, d2)); - decimal_free (); - } - ret = cb_list_reverse (decimal_stack); - decimal_stack = NULL; + /* move figurative constants and literals to the right for comparision */ + if (cb_flag_fast_compare + && (CB_CONST_P (p->x) || CB_LITERAL_P (p->x)) + && !(CB_CONST_P (p->y) || CB_LITERAL_P (p->y))) { + swap_condition_operands (p); + } + ret = cb_build_cond_default (p, p->x, p->y); + if (CB_FUNCALL_P(ret) && !strcmp(CB_FUNCALL(ret)->name, "$:")) { break; } - if (CB_REF_OR_FIELD_P (p->x)) { - f = CB_FIELD_PTR (p->x); - if(f->flag_any_length) - has_any_len = 1; - } - - if (CB_INDEX_OR_HANDLE_P (p->x) - || CB_INDEX_OR_HANDLE_P (p->y) - || CB_TREE_CLASS (p->x) == CB_CLASS_POINTER - || CB_TREE_CLASS (p->y) == CB_CLASS_POINTER) { - ret = cb_build_binary_op (p->x, '-', p->y); - } else if (CB_BINARY_OP_P (p->x) - || CB_BINARY_OP_P (p->y)) { - if (cb_is_integer_expr (x)) { - ret = cb_build_optim_cond (p); - break; - } - - /* Decimal comparison */ - d1 = decimal_alloc (); - d2 = decimal_alloc (); - decimal_expand (d1, p->x); - decimal_expand (d2, p->y); - dpush (CB_BUILD_FUNCALL_2 ("cob_decimal_cmp", d1, d2)); - decimal_free (); - decimal_free (); - ret = cb_list_reverse (decimal_stack); - decimal_stack = NULL; - } else { - /* DEBUG Bypass optimization for PERFORM */ - if (current_program->flag_debugging) { - ret = CB_BUILD_FUNCALL_2 ("cob_cmp", p->x, p->y); - break; - } - if (cb_check_num_cond (p->x, p->y)) { - size1 = cb_field_size (p->x); - ret = CB_BUILD_FUNCALL_3 ("memcmp", - CB_BUILD_CAST_ADDRESS (p->x), - CB_BUILD_CAST_ADDRESS (p->y), - cb_int (size1)); - break; - } - if (p->op == '=' - || p->op == '~' - || p->op == '>' - || p->op == '<' - || p->op == ']' - || p->op == '[') { - int_usage = CB_USAGE_PACKED; - if (CB_TREE_CLASS (p->x) == CB_CLASS_NUMERIC - && CB_TREE_CLASS (p->y) == CB_CLASS_NUMERIC - && CB_TREE_TAG (p->x) == CB_TAG_LITERAL - && CB_TREE_TAG (p->y) == CB_TAG_REFERENCE) { /* literal relop field */ - d1 = p->x; - p->x = p->y; /* Swap operands */ - p->y = d1; - if (p->op == '>') - p->op = '<'; - else if (p->op == '<') - p->op = '>'; - else if (p->op == '[') - p->op = ']'; - else if (p->op == ']') - p->op = '['; - } - } else { - int_usage = -1; - } - if (CB_TREE_CLASS (p->x) == CB_CLASS_NUMERIC - && CB_TREE_CLASS (p->y) == CB_CLASS_NUMERIC - && cb_fits_long_long (p->y)) { - if (CB_REF_OR_FIELD_P (p->x)) { - f = CB_FIELD_PTR (p->x); - if (cb_is_integer_field_and_int (f, p->y) - && cb_fits_int (p->y)) { - /* 'native' (short/int/long) on SYNC boundary */ - int_usage = -1; - ret = CB_BUILD_FUNCALL_3 ("$:", p->x, (cb_tree)(long)p->op, p->y); - cb_copy_source_reference (ret, x); - return ret; - } - } - int_usage = -1; - ret = cb_build_optim_cond (p); - break; - } - int_usage = -1; - - /* Field comparison */ - if ((CB_REF_OR_FIELD_P (p->x)) - && (CB_TREE_CATEGORY (p->x) == CB_CATEGORY_ALPHANUMERIC || - CB_TREE_CATEGORY (p->x) == CB_CATEGORY_ALPHABETIC) - && cb_field_size (p->x) == 1 - && !has_any_len - && !current_program->alphabet_name_list - && (p->y == cb_space || p->y == cb_low || - p->y == cb_high || p->y == cb_zero)) { - ret = CB_BUILD_FUNCALL_2 ("$G", p->x, p->y); - break; - } - if (cb_check_alpha_cond (p->x) - && cb_check_alpha_cond (p->y)) { - size1 = cb_field_size (p->x); - size2 = cb_field_size (p->y); - } else { - size1 = 0; - size2 = 0; - } -#if 0 /* possibly add check of classes of the two operands, note that there - are a lot of defined comparisions in the standard 8.8.4.1.1 relation - conditions, with explicit comparision of class alphanumeric (where - all edited items go to) and of class numeric; so likely only do this - with a new warning only enabled with -Wextra. */ - if (get_warn_opt_value (cb_warn_strict_typing) != COBC_WARN_DISABLED) { - if (cb_tree_class_are_something (left, right)) { - cb_warning_x (cb_warn_strict_typing, x, _("alphanumeric value is expected")); - } else { - cb_warning_x (cb_warn_strict_typing, x, _("numeric value is expected")); - } - } -#endif - if (size1 == 1 && size2 == 1 && !has_any_len) { - ret = CB_BUILD_FUNCALL_2 ("$G", p->x, p->y); - } else if (size1 != 0 && size1 == size2 && !has_any_len) { - ret = CB_BUILD_FUNCALL_3 ("memcmp", - CB_BUILD_CAST_ADDRESS (p->x), - CB_BUILD_CAST_ADDRESS (p->y), - cb_int (size1)); - } else { - if (CB_TREE_CLASS (p->x) == CB_CLASS_NUMERIC && p->y == cb_zero) { - ret = cb_build_optim_cond (p); - } else { - ret = CB_BUILD_FUNCALL_2 ("cob_cmp", p->x, p->y); - } - } + cb_next_binary_op_flag = p->flag; + ret = cb_build_binary_op (ret, p->op, p->y); + if (CB_VALID_TREE (ret)) { + CB_BINARY_OP (ret)->flag = p->flag; } } - ret = cb_build_binary_op (ret, p->op, p->y); -return_ret: if (ret != cb_true && ret != cb_false) { cb_copy_source_reference (ret, x); } return ret; + } default: break; } @@ -7500,7 +7710,6 @@ cb_end_statement (void) static cb_tree cb_build_optim_add (cb_tree v, cb_tree n) { - if (CB_REF_OR_FIELD_P (v)) { const struct cb_field *f = CB_FIELD_PTR (v); if (cb_is_integer_field(f) @@ -7570,12 +7779,16 @@ cb_build_optim_add (cb_tree v, cb_tree n) CB_BUILD_CAST_ADDRESS (v), cb_build_cast_int (n)); } - } else if (!f->pic->scale - && f->usage == CB_USAGE_PACKED - && f->pic->digits < 10) { - optimize_defs[COB_ADD_PACKED_INT] = 1; - return CB_BUILD_FUNCALL_2 ("cob_add_packed_int", + } else if (f->usage == CB_USAGE_PACKED) { + if (f->pic->digits < 10) { + optimize_defs[COB_ADD_PACKED_INT] = 1; + return CB_BUILD_FUNCALL_2 ("cob_add_packed_int", v, cb_build_cast_int (n)); + } else if (f->pic->digits < 19) { + optimize_defs[COB_ADD_PACKED_INT64] = 1; + return CB_BUILD_FUNCALL_2 ("cob_add_packed_int64", + v, cb_build_cast_llint (n)); + } } if (CB_NUMERIC_LITERAL_P (n) && (f->usage == CB_USAGE_PACKED || f->usage == CB_USAGE_DISPLAY) @@ -7597,7 +7810,6 @@ cb_build_optim_add (cb_tree v, cb_tree n) static cb_tree cb_build_optim_sub (cb_tree v, cb_tree n) { - if (CB_REF_OR_FIELD_P (v)) { const struct cb_field *f = CB_FIELD_PTR (v); if (cb_is_integer_field(f) @@ -7665,6 +7877,20 @@ cb_build_optim_sub (cb_tree v, cb_tree n) CB_BUILD_CAST_ADDRESS (v), cb_build_cast_int (n)); } + } else if (f->usage == CB_USAGE_PACKED) { + if (f->pic->digits < 10) { + cb_tree n_negative = cb_build_cast_int (n); + CB_CAST (n_negative)->cast_type = CB_CAST_NEGATIVE_INTEGER; + optimize_defs[COB_ADD_PACKED_INT] = 1; + return CB_BUILD_FUNCALL_2 ("cob_add_packed_int", + v, n_negative); + } else if (f->pic->digits < 19) { + cb_tree n_negative = cb_build_cast_llint (n); + CB_CAST (n_negative)->cast_type = CB_CAST_NEGATIVE_LONG_INT; + optimize_defs[COB_ADD_PACKED_INT64] = 1; + return CB_BUILD_FUNCALL_2 ("cob_add_packed_int64", + v, n_negative); + } } if (CB_NUMERIC_LITERAL_P (n) && (f->usage == CB_USAGE_PACKED || f->usage == CB_USAGE_DISPLAY) @@ -7928,7 +8154,7 @@ emit_accept_external_form (cb_tree x) if (f->flag_occurs) { for (i = 1; i <= f->occurs_max; i++) { sprintf (buff, "%d", i); - index_lit = cb_build_numeric_literal(0, buff, 0); + index_lit = cb_build_numeric_literal (0, buff, 0); f_ref_2 = cb_build_field_reference (f, x); CB_REFERENCE (f_ref_2)->subs = CB_LIST_INIT (index_lit); @@ -8049,8 +8275,7 @@ output_screen_from (struct cb_field *p, const unsigned int sisters) if (type == COB_SCREEN_TYPE_FIELD && p->screen_from) { /* Bump reference count */ p->count++; - cb_emit (CB_BUILD_FUNCALL_2 ("cob_move", p->screen_from, - CB_TREE (p))); + cb_emit (CB_BUILD_FUNCALL_2 ("cob_move", p->screen_from, CB_TREE (p))); } } @@ -8166,51 +8391,108 @@ get_line_and_column_from_pos (const cb_tree pos, cb_tree * const line_or_pos, } } -static void -cb_gen_field_accept (cb_tree var, cb_tree pos, cb_tree fgc, cb_tree bgc, - cb_tree scroll, cb_tree timeout, cb_tree prompt, - cb_tree size_is, cob_flags_t disp_attrs) +static COB_INLINE COB_A_INLINE int +line_col_zero_is_supported (void) { - cb_tree line = NULL; - cb_tree column = NULL; + return cb_accept_display_extensions == CB_OK + || cb_accept_display_extensions == CB_WARNING + || cb_accept_display_extensions == CB_ARCHAIC + || cb_accept_display_extensions == CB_OBSOLETE; +} + +static void +emit_field_accept_display (const enum cob_statement stmt, + cb_tree x, cob_flags_t disp_attrs, + cb_tree pos, cb_tree fgc, cb_tree bgc, cb_tree scroll, + cb_tree timeout, cb_tree prompt, cb_tree size_is, + cb_tree control, cb_tree color, cb_tree cursor) +{ + cb_tree params[CB_BUILD_FUNCALL_MAX - 3] = { 0 }; + char param_ids[CB_BUILD_FUNCALL_MAX - 3] = { 0 }; + unsigned char parnum = 0; + cb_tree parameter_ids = NULL; if (!pos) { - cb_emit (CB_BUILD_FUNCALL_10 ("cob_field_accept", - var, NULL, NULL, fgc, bgc, scroll, - timeout, prompt, size_is, cb_flags_t (disp_attrs))); + /* no position to pass */ } else if (CB_LIST_P (pos)) { + /* AT LINE/COL */ + cb_tree line = NULL; + cb_tree column = NULL; get_line_and_column_from_pos (pos, &line, &column); - cb_emit (CB_BUILD_FUNCALL_10 ("cob_field_accept", - var, line, column, fgc, bgc, scroll, - timeout, prompt, size_is, cb_flags_t (disp_attrs))); + if (line) { + param_ids[parnum] = 'l'; + params[parnum++] = line; + } + if (column) { + param_ids[parnum] = 'c'; + params[parnum++] = column; + } } else if (valid_screen_pos (pos)) { - cb_emit (CB_BUILD_FUNCALL_10 ("cob_field_accept", - var, pos, NULL, fgc, bgc, scroll, - timeout, prompt, size_is, cb_flags_t (disp_attrs))); + /* AT POS */ + param_ids[parnum] = 'p'; + params[parnum++] = pos; } -} - -static COB_INLINE COB_A_INLINE int -line_col_zero_is_supported (void) -{ - return cb_accept_display_extensions == CB_OK - || cb_accept_display_extensions == CB_WARNING - || cb_accept_display_extensions == CB_ARCHAIC - || cb_accept_display_extensions == CB_OBSOLETE; + if (fgc) { + param_ids[parnum] = 'f'; + params[parnum++] = fgc; + } + if (bgc) { + param_ids[parnum] = 'b'; + params[parnum++] = bgc; + } + if (scroll) { + param_ids[parnum] = 's'; + params[parnum++] = scroll; + } + if (timeout) { + param_ids[parnum] = 't'; + params[parnum++] = timeout; + } + if (prompt) { + param_ids[parnum] = 'P'; + params[parnum++] = prompt; + } + if (size_is) { + param_ids[parnum] = 'S'; + params[parnum++] = size_is; + } + if (control) { + param_ids[parnum] = 'C'; + params[parnum++] = control; + } + if (color) { + param_ids[parnum] = 'L'; + params[parnum++] = color; + } + if (cursor) { + param_ids[parnum] = 'R'; + params[parnum++] = cursor; + } + if (parnum) { + parameter_ids = cb_build_string (cobc_parse_strdup (param_ids), parnum); + } + cb_emit (cb_build_funcall ( + stmt == STMT_ACCEPT ? "cob_accept_field" : "cob_display_field", + parnum + 3, x, cb_flags_t (disp_attrs), parameter_ids, + params[0], params[1], params[2], params[3], params[4], params[5], + params[6], params[7], params[8], params[9], params[10])); } void cb_emit_accept (cb_tree var, cb_tree pos, struct cb_attr_struct *attr_ptr) { - cb_tree line; - cb_tree column; - cb_tree fgc; - cb_tree bgc; - cb_tree scroll; - cb_tree timeout; - cb_tree prompt; - cb_tree size_is; /* WITH SIZE IS */ - cob_flags_t disp_attrs; + cb_tree line = NULL; + cb_tree column = NULL; + cb_tree fgc = NULL; + cb_tree bgc = NULL; + cb_tree scroll = NULL; + cb_tree timeout = NULL; + cb_tree prompt = NULL; + cb_tree size_is = NULL; /* WITH SIZE IS */ + cb_tree control = NULL; /* variable named attributes */ + cb_tree color = NULL; /* variable numeric added attributes */ + cb_tree cursor = NULL; /* CURSOR (position within the field) */ + cob_flags_t disp_attrs = 0; if (current_program->flag_screen) { #ifndef WITH_EXTENDED_SCREENIO @@ -8235,6 +8517,9 @@ cb_emit_accept (cb_tree var, cb_tree pos, struct cb_attr_struct *attr_ptr) timeout = attr_ptr->timeout; prompt = attr_ptr->prompt; size_is = attr_ptr->size_is; + control = attr_ptr->control; + cursor = attr_ptr->cursor; + color = attr_ptr->color; disp_attrs = attr_ptr->dispattrs; if (cb_validate_one (pos) || cb_validate_one (fgc) @@ -8242,17 +8527,12 @@ cb_emit_accept (cb_tree var, cb_tree pos, struct cb_attr_struct *attr_ptr) || cb_validate_one (scroll) || cb_validate_one (timeout) || cb_validate_one (prompt) - || cb_validate_one (size_is)) { + || cb_validate_one (size_is) + || cb_validate_one (control) + || cb_validate_one (cursor) + || cb_validate_one (color)) { return; } - } else { - fgc = NULL; - bgc = NULL; - scroll = NULL; - timeout = NULL; - prompt = NULL; - size_is = NULL; - disp_attrs = 0; } if (prompt) { @@ -8316,22 +8596,20 @@ cb_emit_accept (cb_tree var, cb_tree pos, struct cb_attr_struct *attr_ptr) } gen_screen_ptr = 0; output_screen_to (CB_FIELD (cb_ref (var)), 0); - } else { - if (var == cb_null) { - var = NULL; - } - if (pos || fgc || bgc || scroll || disp_attrs) { - cb_gen_field_accept (var, pos, fgc, bgc, scroll, - timeout, prompt, size_is, disp_attrs); - } else { - cb_emit (CB_BUILD_FUNCALL_10 ("cob_field_accept", - var, NULL, NULL, fgc, bgc, - scroll, timeout, prompt, - size_is, cb_flags_t (disp_attrs))); - } + return; } - } else if (pos || fgc || bgc || scroll || disp_attrs - || timeout || prompt || size_is) { + } + + if (var == cb_null) { + var = NULL; + } + if (disp_attrs || pos || fgc || bgc || scroll + || timeout || prompt || size_is + || control || color || cursor) { + emit_field_accept_display (STMT_ACCEPT, var, disp_attrs, + pos, fgc, bgc, scroll, timeout, prompt, + size_is, control, color, cursor); + /* Bump ref count to force CRT STATUS field generation and include it in cross-reference */ if (current_program->crt_status) { @@ -8340,15 +8618,7 @@ cb_emit_accept (cb_tree var, cb_tree pos, struct cb_attr_struct *attr_ptr) cobc_xref_set_receiving (current_program->crt_status); } } - if (var == cb_null) { - var = NULL; - } - cb_gen_field_accept (var, pos, fgc, bgc, scroll, - timeout, prompt, size_is, disp_attrs); } else { - if (var == cb_null) { - var = NULL; - } cb_emit (CB_BUILD_FUNCALL_1 ("cob_accept", var)); } } @@ -8619,8 +8889,11 @@ check_allocate_returning (cb_tree returning) if (!returning) { return 0; } - if (!(CB_REFERENCE_P(returning) && - CB_TREE_CLASS (returning) == CB_CLASS_POINTER)) { + if (cb_validate_one (returning)) { + return 1; + } + if (! ( CB_REFERENCE_P (returning) + && CB_TREE_CLASS (returning) == CB_CLASS_POINTER)) { cb_error_x (CB_TREE(current_statement), _("target of RETURNING is not a data pointer")); return 1; @@ -8672,7 +8945,7 @@ cb_emit_allocate_identifier (cb_tree allocate_identifier, cb_tree returning, con INITIALIZE identifier WITH FILLER ALL TO VALUE THEN TO DEFAULT */ if (init_flag) { current_statement->not_ex_handler = - cb_build_initialize (allocate_identifier, cb_true, NULL, 1, 0, 0); + cb_build_initialize (allocate_identifier, cb_true, NULL, 1, STMT_ALLOCATE, 0); } } @@ -9199,19 +9472,23 @@ cb_emit_delete_file (cb_tree file) static int -validate_attrs (cb_tree pos, cb_tree fgc, cb_tree bgc, cb_tree scroll, cb_tree size_is) +validate_attrs (cb_tree pos, cb_tree fgc, cb_tree bgc, cb_tree scroll, + cb_tree size_is, cb_tree control, cb_tree color) { return cb_validate_one (pos) || cb_validate_one (fgc) || cb_validate_one (bgc) || cb_validate_one (scroll) - || cb_validate_one (size_is); + || cb_validate_one (size_is) + || cb_validate_one (control) + || cb_validate_one (color); } static void initialize_attrs (const struct cb_attr_struct * const attr_ptr, cb_tree * const fgc, cb_tree * const bgc, cb_tree * const scroll, cb_tree * const size_is, + cb_tree * const control, cb_tree * const color, cob_flags_t * const dispattrs) { if (attr_ptr) { @@ -9219,12 +9496,16 @@ initialize_attrs (const struct cb_attr_struct * const attr_ptr, *bgc = attr_ptr->bgc; *scroll = attr_ptr->scroll; *size_is = attr_ptr->size_is; + *control = attr_ptr->control; + *color = attr_ptr->color; *dispattrs = attr_ptr->dispattrs; } else { *fgc = NULL; *bgc = NULL; *scroll = NULL; *size_is = NULL; + *control = NULL; + *color = NULL; *dispattrs = 0; } } @@ -9240,6 +9521,8 @@ cb_emit_display_window (cb_tree type, cb_tree own_handle, cb_tree upon_handle, cb_tree bgc; cb_tree scroll; cb_tree size_is; /* WITH SIZE IS */ + cb_tree control; /* CONTROL VALUE numeric added window attributes */ + cb_tree color; /* COLOR numeric added attributes */ cob_flags_t disp_attrs; int ret = 0; @@ -9252,8 +9535,9 @@ cb_emit_display_window (cb_tree type, cb_tree own_handle, cb_tree upon_handle, } /* Validate line_column and the attributes */ - initialize_attrs (attr_ptr, &fgc, &bgc, &scroll, &size_is, &disp_attrs); - if (validate_attrs (line_column, fgc, bgc, scroll, size_is)) { + initialize_attrs (attr_ptr, &fgc, &bgc, &scroll, &size_is, + &control, &color, &disp_attrs); + if (validate_attrs (line_column, fgc, bgc, scroll, size_is, control, color)) { ret++; } @@ -9271,6 +9555,8 @@ cb_emit_display_window (cb_tree type, cb_tree own_handle, cb_tree upon_handle, } #if 0 /* TODO, likely as multiple functions */ + /* note that CONTROL VALUE in WINDOW related statements + is different from CONTROL, which is not available for DISPLAY WINDOW */ cb_emit (CB_BUILD_FUNCALL_2 ("cob_display_window", own_handle, upon_handle)); #endif } @@ -9333,6 +9619,7 @@ cb_emit_destroy (cb_tree controls) /* DISPLAY statement */ +/* DISPLAY ... UPON ENVIRONMENT NAME */ void cb_emit_env_name (cb_tree value) { @@ -9342,6 +9629,7 @@ cb_emit_env_name (cb_tree value) cb_emit (CB_BUILD_FUNCALL_1 ("cob_display_environment", value)); } +/* DISPLAY ... UPON ENVIRONMENT VALUE */ void cb_emit_env_value (cb_tree value) { @@ -9351,6 +9639,7 @@ cb_emit_env_value (cb_tree value) cb_emit (CB_BUILD_FUNCALL_1 ("cob_display_env_value", value)); } +/* DISPLAY ... UPON ARGUMENT-NUMBER */ void cb_emit_arg_number (cb_tree value) { @@ -9360,6 +9649,7 @@ cb_emit_arg_number (cb_tree value) cb_emit (CB_BUILD_FUNCALL_1 ("cob_display_arg_number", value)); } +/* DISPLAY ... UPON COMMAND-LINE */ void cb_emit_command_line (cb_tree value) { @@ -9490,21 +9780,6 @@ process_special_values (cb_tree value, cb_tree * const size_is, cob_flags_t * co } } -static void -emit_field_display (const cb_tree x, const cb_tree pos, const cb_tree fgc, - const cb_tree bgc, const cb_tree scroll, - const cb_tree size_is, const cob_flags_t disp_attrs) -{ - cb_tree line_or_pos = NULL; - cb_tree column = NULL; - - get_line_and_column_from_pos (pos, &line_or_pos, &column); - cb_emit (CB_BUILD_FUNCALL_8 ("cob_field_display", - x, line_or_pos, column, fgc, bgc, - scroll, size_is, - cb_flags_t (disp_attrs))); -} - static cb_tree get_integer_literal_pair (const char *value) { @@ -9602,14 +9877,16 @@ emit_default_field_display_for_all_but_last (cb_tree values, cb_tree size_is, disp_attrs = 0; process_special_values (x, &size_is, &disp_attrs); - emit_field_display (x, pos, NULL, NULL, NULL, NULL, disp_attrs); + emit_field_accept_display (STMT_DISPLAY, x, disp_attrs, + pos, NULL, NULL, NULL, NULL, NULL, + size_is, NULL, NULL, NULL); } } static void emit_field_display_for_last (cb_tree values, cb_tree line_column, cb_tree fgc, cb_tree bgc, cb_tree scroll, cb_tree size_is, - cob_flags_t disp_attrs, + cb_tree control, cb_tree color, cob_flags_t disp_attrs, const int is_first_display_list) { cb_tree l; @@ -9637,8 +9914,9 @@ emit_field_display_for_last (cb_tree values, cb_tree line_column, cb_tree fgc, } process_special_values (last_elt, &size_is, &disp_attrs); - emit_field_display (last_elt, line_column, fgc, bgc, scroll, size_is, - disp_attrs); + emit_field_accept_display (STMT_DISPLAY, last_elt, disp_attrs, + line_column, fgc, bgc, scroll, NULL, NULL, + size_is, control, color, NULL); } void @@ -9651,6 +9929,8 @@ cb_emit_display (cb_tree values, cb_tree upon, cb_tree no_adv, cb_tree bgc; cb_tree scroll; cb_tree size_is; /* WITH SIZE IS */ + cb_tree control; /* CONTROL IS variable-named attributes */ + cb_tree color; /* COLOR variable numeric added attributes */ cob_flags_t disp_attrs; cb_tree m; struct cb_field *f = NULL; @@ -9658,7 +9938,7 @@ cb_emit_display (cb_tree values, cb_tree upon, cb_tree no_adv, /* Validate upon and values */ if (upon == cb_error_node || cb_validate_list (values) - || validate_types_of_display_values (CB_LIST(values))) { + || validate_types_of_display_values (CB_LIST (values))) { return; } if (current_statement->ex_handler == NULL @@ -9666,8 +9946,9 @@ cb_emit_display (cb_tree values, cb_tree upon, cb_tree no_adv, current_statement->handler_type = NO_HANDLER; /* Validate line_column and the attributes */ - initialize_attrs (attr_ptr, &fgc, &bgc, &scroll, &size_is, &disp_attrs); - if (validate_attrs (line_column, fgc, bgc, scroll, size_is)) { + initialize_attrs (attr_ptr, &fgc, &bgc, &scroll, &size_is, + &control, &color, &disp_attrs); + if (validate_attrs (line_column, fgc, bgc, scroll, size_is, control, color)) { return; } @@ -9677,7 +9958,7 @@ cb_emit_display (cb_tree values, cb_tree upon, cb_tree no_adv, /* CGI: DISPLAY external-form */ /* TODO: CHECKME, see Patch #27 */ - m = CB_LIST(values)->value; + m = CB_LIST (values)->value; if (CB_REF_OR_FIELD_P (m)) { f = CB_FIELD_PTR (m); } @@ -9720,7 +10001,7 @@ cb_emit_display (cb_tree values, cb_tree upon, cb_tree no_adv, is_first_display_list); } emit_field_display_for_last (values, line_column, fgc, bgc, - scroll, size_is, disp_attrs, + scroll, size_is, control, color, disp_attrs, is_first_display_list); break; @@ -9801,7 +10082,8 @@ cb_build_display_name (cb_tree x) return cb_error_node; } -/* DIVIDE statement */ +/* DIVIDE statement - with REMAINDER + other variants are handled in cb_emit_arithmetic -> cb_build_div */ void cb_emit_divide (cb_tree dividend, cb_tree divisor, cb_tree quotient, @@ -9810,14 +10092,12 @@ cb_emit_divide (cb_tree dividend, cb_tree divisor, cb_tree quotient, cb_tree quotient_field, remainder_field; if (cb_validate_one (dividend) - || cb_validate_one (divisor)) { - return; - } - - if (cb_validate_one (CB_VALUE(quotient)) + || cb_validate_one (divisor) + || cb_validate_one (CB_VALUE(quotient)) || cb_validate_one (CB_VALUE(remainder))) { return; } + quotient_field = cb_check_numeric_edited_name (CB_VALUE(quotient)); remainder_field = cb_check_numeric_edited_name (CB_VALUE(remainder)); @@ -10014,7 +10294,7 @@ cb_emit_evaluate (cb_tree subject_list, cb_tree case_list) } #endif - /* code to skipt to internal label of END-EVALUATE */ + /* code to skip to internal label of END-EVALUATE */ sprintf (sbuf, "goto %s%d;", CB_PREFIX_LABEL, cb_id); x = cb_build_direct (cobc_parse_strdup (sbuf), 0); @@ -10298,7 +10578,7 @@ cb_emit_initialize (cb_tree vars, cb_tree fillinit, cb_tree value, CB_REFERENCE (x)->length = temp; } cb_emit (cb_build_initialize (x , value, replacing, - def_init, 1, no_fill_init)); + def_init, STMT_INITIALIZE, no_fill_init)); } } @@ -10705,15 +10985,18 @@ move_warning (cb_tree src, cb_tree dst, const unsigned int value_flag, return; } +/* Count number of free places in an edited field; + note that PICTURE is pre-validated so national fields + won't include A + X, alhanumeric won't include N */ static int -count_pic_alphanumeric_edited (struct cb_field *field) +count_pic_edited (struct cb_field *field) { cob_pic_symbol *s; int count = 0; - /* Count number of free places in an alphanumeric edited field */ for (s = field->pic->str; s->symbol != '\0'; ++s) { - if (s->symbol == '9' || s->symbol == 'A' || s->symbol == 'X') { + const char sym = s->symbol; + if (sym == '9' || sym == 'A' || sym == 'X' || sym == 'N') { count += s->times_repeated; } } @@ -10945,6 +11228,7 @@ enum move_outcome { MOVE_NON_INTEGER_TO_ALNUM, MOVE_NUMERIC_EXPECTED, MOVE_ALNUM_EXPECTED, + MOVE_NATIONAL_EXPECTED, MOVE_VALUE_NOT_FIT_PIC, MOVE_GENERAL_OVERFLOW, MOVE_GENERAL_POSSIBLE_TRUNCATION, @@ -11027,12 +11311,10 @@ validate_move_from_num_lit (cb_tree src, cb_tree dst, const unsigned int is_valu { struct cb_field *fdst = CB_FIELD_PTR (dst); struct cb_literal *l = CB_LITERAL (src); - int most_significant = -999; - int least_significant = 999; + int leftmost_significant, most_significant, least_significant; size_t i; cob_s64_t val; cb_tree loc = src->source_line ? src : dst; - unsigned char *p; /* Numeric literal */ if (l->all) { @@ -11043,24 +11325,32 @@ validate_move_from_num_lit (cb_tree src, cb_tree dst, const unsigned int is_valu return MOVE_OK; } - /* Compute the most significant figure place */ - for (i = 0; i < l->size; i++) { - if (l->data[i] != '0') { + /* Compute the most significant figure place + in relatation to the decimal point (negative = decimal position) */ + for (leftmost_significant = 0; leftmost_significant < l->size; leftmost_significant++) { + if (l->data[leftmost_significant] != '0') { break; } } - if (i != l->size) { - most_significant = (int) (l->size - l->scale - i - 1); + if (leftmost_significant == l->size) { + most_significant = -999; + } else { + most_significant = l->size - l->scale - leftmost_significant; + if (most_significant < 1) most_significant--; } - /* Compute the least significant figure place */ - for (i = 0; i < l->size; i++) { - if (l->data[l->size - i - 1] != '0') { + /* Compute the least significant figure place + in relatation to the decimal point (negative = decimal position) */ + for (i = l->size - 1; i != 0; i--) { + if (l->data[i] != '0') { break; } } - if (i != l->size) { - least_significant = (int) (-l->scale + i); + if (i == 0) { + least_significant = 999; + } else { + least_significant = (l->size - l->scale) - i; + if (least_significant < 1) least_significant--; } /* Value check */ @@ -11070,12 +11360,17 @@ validate_move_from_num_lit (cb_tree src, cb_tree dst, const unsigned int is_valu if (fdst->usage == CB_USAGE_COMP_X) { break; } - - if (is_value) { + if (is_value + || l->scale == 0) { return MOVE_ALNUM_EXPECTED; } - if (l->scale == 0) { - return MOVE_ALNUM_EXPECTED; + return MOVE_INVALID; + + case CB_CATEGORY_NATIONAL: + case CB_CATEGORY_NATIONAL_EDITED: + if (is_value + || l->scale == 0) { + return MOVE_NATIONAL_EXPECTED; } return MOVE_NON_INTEGER_TO_ALNUM; @@ -11087,18 +11382,23 @@ validate_move_from_num_lit (cb_tree src, cb_tree dst, const unsigned int is_valu } /* Fall-through */ case CB_CATEGORY_NUMERIC: - if (fdst->pic->scale < 0) { + { + const struct cb_picture *pic = fdst->pic; + if (pic->scale < 0) { /* Check for PIC 9(n)P(m) */ - if (least_significant < -fdst->pic->scale) { + if (least_significant <= -pic->scale) { + /* 12300 (3) <= 99PPP (- -3) */ return MOVE_VALUE_NOT_FIT_PIC; } - } else if (fdst->pic->scale > fdst->pic->size) { + } else if (pic->scale > pic->digits) { /* Check for PIC P(n)9(m) */ - if (most_significant >= fdst->pic->size - fdst->pic->scale) { + if (most_significant > pic->digits - pic->scale - 1) { + /* .00123 (-3) > PPP99 (-4 [2 - 5 - 1]) */ return MOVE_VALUE_NOT_FIT_PIC; } } break; + } case CB_CATEGORY_ALPHABETIC: if (is_value) { return MOVE_ALNUM_EXPECTED; @@ -11129,144 +11429,111 @@ validate_move_from_num_lit (cb_tree src, cb_tree dst, const unsigned int is_valu /* Size check */ if (fdst->flag_real_binary || ( !cb_binary_truncate - && fdst->pic->scale == 0 + && fdst->pic->scale <= 0 && ( fdst->usage == CB_USAGE_COMP_5 || fdst->usage == CB_USAGE_COMP_X || fdst->usage == CB_USAGE_COMP_N || fdst->usage == CB_USAGE_BINARY))) { - int binln; - p = l->data; - for (i = 0; i < l->size; i++) { - if (l->data[i] != '0') { - p = &l->data[i]; - break; - } + + i = l->size - leftmost_significant; + if (i <= 19) { + val = cb_get_long_long (src); + } else if (fdst->size < 8) { + return MOVE_NUMERIC_LIT_OVERFLOW; + } else { + val = 0; } - i = l->size - i; - binln = (int)fdst->size; - if (fdst->pic->flag_has_p) { - if (fdst->pic->digits < 3) - binln = 1; - else if (fdst->pic->digits < 5) - binln = 2; - else if (fdst->pic->digits < 7) - binln = 3; - else if (fdst->pic->digits < 10) - binln = 4; - else if (fdst->pic->digits < 13) - binln = 5; - else - binln = fdst->pic->digits; + /* handle negative scale aka 999PPP */ + if (fdst->pic->scale < 0) { + int j = fdst->pic->scale; + i += j; + while (j != 0) { + val /= 10; + j++; + } } - switch (binln) { + + switch (fdst->size) { case 1: - if (i > cb_max_binary) { - return MOVE_NUMERIC_LIT_OVERFLOW; - } - val = cb_get_long_long (src); if (fdst->pic->have_sign) { - if (val < COB_S64_C(-128) - || val > COB_S64_C(127)) { + if (val < COB_S64_C (-128) + || val > COB_S64_C (127)) { return MOVE_NUMERIC_LIT_OVERFLOW; } } else { - if (val > COB_S64_C(255)) { + if (val > COB_S64_C (255)) { return MOVE_NUMERIC_LIT_OVERFLOW; } } break; case 2: - if (i > cb_max_binary) { - return MOVE_NUMERIC_LIT_OVERFLOW; - } - val = cb_get_long_long (src); if (fdst->pic->have_sign) { - if (val < COB_S64_C(-32768) || - val > COB_S64_C(32767)) { + if (val < COB_S64_C (-32768) || + val > COB_S64_C (32767)) { return MOVE_NUMERIC_LIT_OVERFLOW; } } else { - if (val > COB_S64_C(65535)) { + if (val > COB_S64_C (65535)) { return MOVE_NUMERIC_LIT_OVERFLOW; } } break; case 3: - if (i > cb_max_binary) { - return MOVE_NUMERIC_LIT_OVERFLOW; - } - val = cb_get_long_long (src); if (fdst->pic->have_sign) { - if (val < COB_S64_C(-8388608) - || val > COB_S64_C(8388607)) { + if (val < COB_S64_C (-8388608) + || val > COB_S64_C (8388607)) { return MOVE_NUMERIC_LIT_OVERFLOW; } } else { - if (val > COB_S64_C(16777215)) { + if (val > COB_S64_C (16777215)) { return MOVE_NUMERIC_LIT_OVERFLOW; } } break; case 4: - if (i > cb_max_binary) { - return MOVE_NUMERIC_LIT_OVERFLOW; - } - val = cb_get_long_long (src); if (fdst->pic->have_sign) { - if (val < COB_S64_C(-2147483648) - || val > COB_S64_C(2147483647)) { + if (val < COB_S64_C (-2147483648) + || val > COB_S64_C (2147483647)) { return MOVE_NUMERIC_LIT_OVERFLOW; } } else { - if (val > COB_S64_C(4294967295)) { + if (val > COB_S64_C (4294967295)) { return MOVE_NUMERIC_LIT_OVERFLOW; } } break; case 5: - if (i > cb_max_binary) { - return MOVE_NUMERIC_LIT_OVERFLOW; - } - val = cb_get_long_long (src); if (fdst->pic->have_sign) { - if (val < COB_S64_C(-549755813888) - || val > COB_S64_C(549755813887)) { + if (val < COB_S64_C (-549755813888) + || val > COB_S64_C (549755813887)) { return MOVE_NUMERIC_LIT_OVERFLOW; } } else { - if (val > COB_S64_C(1099511627775)) { + if (val > COB_S64_C (1099511627775)) { return MOVE_NUMERIC_LIT_OVERFLOW; } } break; case 6: - if (i > cb_max_binary) { - return MOVE_NUMERIC_LIT_OVERFLOW; - } - val = cb_get_long_long (src); if (fdst->pic->have_sign) { - if (val < COB_S64_C(-140737488355328) - || val > COB_S64_C(140737488355327)) { + if (val < COB_S64_C (-140737488355328) + || val > COB_S64_C (140737488355327)) { return MOVE_NUMERIC_LIT_OVERFLOW; } } else { - if (val > COB_S64_C(281474976710655)) { + if (val > COB_S64_C (281474976710655)) { return MOVE_NUMERIC_LIT_OVERFLOW; } } break; case 7: - if (i > cb_max_binary) { - return MOVE_NUMERIC_LIT_OVERFLOW; - } - val = cb_get_long_long (src); if (fdst->pic->have_sign) { - if (val < COB_S64_C(-36028797018963968) - || val > COB_S64_C(36028797018963967)) { + if (val < COB_S64_C (-36028797018963968) + || val > COB_S64_C (36028797018963967)) { return MOVE_NUMERIC_LIT_OVERFLOW; } } else { - if (val > COB_S64_C(72057594037927935)) { + if (val > COB_S64_C (72057594037927935)) { return MOVE_NUMERIC_LIT_OVERFLOW; } } @@ -11280,9 +11547,10 @@ validate_move_from_num_lit (cb_tree src, cb_tree dst, const unsigned int is_valu return MOVE_NUMERIC_LIT_OVERFLOW; } if (i == 19 - && memcmp (p, l->sign ? "9223372036854775808" : - "9223372036854775807", - (size_t)19) > 0) { + && memcmp (l->data + leftmost_significant, + l->sign ? "9223372036854775808" : + "9223372036854775807", + 19) > 0) { return MOVE_NUMERIC_LIT_OVERFLOW; } } else { @@ -11293,7 +11561,9 @@ validate_move_from_num_lit (cb_tree src, cb_tree dst, const unsigned int is_valu return MOVE_NUMERIC_LIT_OVERFLOW; } if (i == 20 - && memcmp (p, "18446744073709551615", (size_t)20) > 0) { + && memcmp (l->data + leftmost_significant, + "18446744073709551615", + 20) > 0) { return MOVE_NUMERIC_LIT_OVERFLOW; } } @@ -11310,7 +11580,7 @@ validate_move_from_num_lit (cb_tree src, cb_tree dst, const unsigned int is_valu } else { *size = fdst->pic->digits; } - if (most_significant >= *size) { + if (most_significant > *size) { *size = -1; return MOVE_GENERAL_OVERFLOW; } @@ -11318,6 +11588,101 @@ validate_move_from_num_lit (cb_tree src, cb_tree dst, const unsigned int is_valu return MOVE_OK; } +static enum move_outcome +validate_move_from_national_lit (cb_tree src, cb_tree dst, const unsigned int is_value, + int * const size) +{ + struct cb_field *fdst = CB_FIELD_PTR (dst); + struct cb_literal *l = CB_LITERAL (src); + size_t i; + + if (l->size % COB_NATIONAL_SIZE != 0) { + return MOVE_INVALID; + } + + /* Value check */ + switch (CB_TREE_CATEGORY (dst)) { + case CB_CATEGORY_NATIONAL: + break; + case CB_CATEGORY_NUMERIC: + if (is_value) { + return MOVE_NUMERIC_EXPECTED; + } else { + for (i = 0; i < l->size; i++) { + if (l->data[i++] != 0x00) { + return MOVE_NUMERIC_EXPECTED; + } + if (!isdigit (l->data[i])) { + return MOVE_NUMERIC_EXPECTED; + } + } + } + break; + case CB_CATEGORY_NUMERIC_EDITED: + if (!is_value) { + for (i = 0; i < l->size; i++) { + if (l->data[i++] != 0x00) { + return MOVE_NUMERIC_EXPECTED; + } + if (!isdigit (l->data[i]) + && l->data[i] != '.' + && l->data[i] != ',' + && l->data[i] != '+' + && l->data[i] != '-' + && l->data[i] != ' ') { + return MOVE_NUMERIC_EXPECTED; + } + } + } else { + /* TODO: validate the value for VALUE - needed? */ + } + break; + default: + return MOVE_INVALID; + } + + /* Size check */ + *size = cb_field_size (dst); + if (CB_TREE_CATEGORY (dst) == CB_CATEGORY_NATIONAL) { + *size /= COB_NATIONAL_SIZE; + } + if (*size > 0 + && l->size > 0 + && !fdst->flag_any_length) { + /* check the real size */ + fdst = CB_FIELD_PTR (dst); + if (fdst->flag_justified) { + /* right justified: trim left */ + for (i = 0; i != l->size; i += 2) { + if (l->data[i] != 0x00 + || l->data[i + 1] != ' ') { + break; + } + } + i = l->size - i; + } else { + /* normal field: trim right */ + for (i = l->size - 1; i != 0; i -= 2) { + if (l->data[i] != ' ' + || l->data[i - 1] != 0x00) { + break; + } + } + i++; + } + i /= COB_NATIONAL_SIZE; + if ((int)i > *size) { + *size = (signed int)i; + return MOVE_GENERAL_OVERFLOW; + } + /* for VALUE: additional check without trim */ + if (is_value && (int)(l->size / COB_NATIONAL_SIZE) > *size) { + return MOVE_VALUE_NOT_FIT_PIC; + } + } + return MOVE_OK; +} + static enum move_outcome validate_move_from_alnum_lit (cb_tree src, cb_tree dst, const unsigned int is_value, int * const size) @@ -11340,17 +11705,21 @@ validate_move_from_alnum_lit (cb_tree src, cb_tree dst, const unsigned int is_va /* TODO: add check (maybe a configuration) for numeric data in alphanumeric literal note - we did this in versions before 3.0 */ - for (i = 0; i < l->size; i++) { - if (!isdigit (l->data[i])) { - /* no check for +-,. as MF seems to not do this here */ - if (cb_move_nonnumlit_to_numeric_is_zero - && !is_value) { - return MOVE_SUBSTITUTING_ZERO; + if (is_value) { + return MOVE_NUMERIC_EXPECTED; + } else { + for (i = 0; i < l->size; i++) { + if (!isdigit (l->data[i])) { + /* no check for +-,. as MF seems to not do this here */ + if (cb_move_nonnumlit_to_numeric_is_zero) { + return MOVE_SUBSTITUTING_ZERO; + } + return MOVE_NUMERIC_EXPECTED; } - return MOVE_NUMERIC_EXPECTED; } } break; + case CB_CATEGORY_NUMERIC_EDITED: /* TODO: add check (maybe a configuration) for numeric data in alphanumeric literal @@ -11403,9 +11772,12 @@ validate_move_from_alnum_lit (cb_tree src, cb_tree dst, const unsigned int is_va /* Size check */ *size = cb_field_size (dst); + if (CB_TREE_CATEGORY (dst) == CB_CATEGORY_NATIONAL) { + *size /= COB_NATIONAL_SIZE; + } if (*size > 0 - && l->size > 0 - && !fdst->flag_any_length) { + && l->size > 0 + && !fdst->flag_any_length) { /* check the real size */ if (fdst->flag_justified) { /* right justified: trim left */ @@ -11429,10 +11801,14 @@ validate_move_from_alnum_lit (cb_tree src, cb_tree dst, const unsigned int is_va return MOVE_GENERAL_OVERFLOW; } /* for VALUE: additional check without trim */ - if (is_value && l->size > (unsigned int)fdst->size) { + if (is_value && (int)l->size > *size) { return MOVE_VALUE_NOT_FIT_PIC; } } + if (is_value + && CB_TREE_CATEGORY (dst) == CB_CATEGORY_NATIONAL) { + return MOVE_NATIONAL_EXPECTED; + } return MOVE_OK; } @@ -11443,6 +11819,8 @@ validate_move_from_literal (cb_tree src, cb_tree dst, const unsigned int is_valu { if (CB_TREE_CLASS (src) == CB_CLASS_NUMERIC) { return validate_move_from_num_lit (src, dst, is_value, size); + } else if (CB_TREE_CLASS (src) == CB_CLASS_NATIONAL) { + return validate_move_from_national_lit (src, dst, is_value, size); } else { return validate_move_from_alnum_lit (src, dst, is_value, size); } @@ -11509,11 +11887,20 @@ validate_elem_move_from_field_or_ref (cb_tree src, cb_tree dst) } break; case CB_CATEGORY_ALPHANUMERIC_EDITED: + case CB_CATEGORY_NATIONAL_EDITED: case CB_CATEGORY_FLOATING_EDITED: if (dst_size == FIELD_SIZE_UNKNOWN) { break; } - if (src_size > count_pic_alphanumeric_edited (fdst)) { + if (src_size > count_pic_edited (fdst)) { + return MOVE_GENERAL_POSSIBLE_TRUNCATION; + } + break; + case CB_CATEGORY_NATIONAL: + if (dst_size == FIELD_SIZE_UNKNOWN) { + break; + } + if (src_size > fdst->size / COB_NATIONAL_SIZE) { return MOVE_GENERAL_POSSIBLE_TRUNCATION; } break; @@ -11528,6 +11915,54 @@ validate_elem_move_from_field_or_ref (cb_tree src, cb_tree dst) } break; + case CB_CATEGORY_NATIONAL: + switch (CB_TREE_CATEGORY (dst)) { + case CB_CATEGORY_NUMERIC: + case CB_CATEGORY_NUMERIC_EDITED: + if (src_size > (int)fdst->pic->digits) { + return MOVE_NUMERIC_POSSIBLE_TRUNCATION; + } + break; + case CB_CATEGORY_NATIONAL: + if (dst_size == FIELD_SIZE_UNKNOWN) { + break; + } + if (src_size > fdst->size / COB_NATIONAL_SIZE) { + return MOVE_GENERAL_POSSIBLE_TRUNCATION; + } + break; + case CB_CATEGORY_NATIONAL_EDITED: + if (dst_size == FIELD_SIZE_UNKNOWN) { + break; + } + if (src_size > count_pic_edited (fdst)) { + return MOVE_GENERAL_POSSIBLE_TRUNCATION; + } + break; + case CB_CATEGORY_BOOLEAN: + /* TODO: add checks */ + break; + default: + return MOVE_INVALID; + } + break; + + case CB_CATEGORY_NATIONAL_EDITED: + switch (CB_TREE_CATEGORY (dst)) { + case CB_CATEGORY_NATIONAL: + case CB_CATEGORY_NATIONAL_EDITED: + if (dst_size == FIELD_SIZE_UNKNOWN) { + break; + } + if (src_size > fdst->size / COB_NATIONAL_SIZE) { + return MOVE_GENERAL_POSSIBLE_TRUNCATION; + } + break; + default: + return MOVE_INVALID; + } + break; + case CB_CATEGORY_ALPHABETIC: case CB_CATEGORY_ALPHANUMERIC_EDITED: switch (CB_TREE_CATEGORY (dst)) { @@ -11536,10 +11971,19 @@ validate_elem_move_from_field_or_ref (cb_tree src, cb_tree dst) case CB_CATEGORY_FLOATING_EDITED: return MOVE_INVALID; case CB_CATEGORY_ALPHANUMERIC_EDITED: + case CB_CATEGORY_NATIONAL_EDITED: + if (dst_size == FIELD_SIZE_UNKNOWN) { + break; + } + if (src_size > count_pic_edited(fdst)) { + return MOVE_GENERAL_POSSIBLE_TRUNCATION; + } + break; + case CB_CATEGORY_NATIONAL: if (dst_size == FIELD_SIZE_UNKNOWN) { break; } - if (src_size > count_pic_alphanumeric_edited(fdst)) { + if (src_size > fdst->size / COB_NATIONAL_SIZE) { return MOVE_GENERAL_POSSIBLE_TRUNCATION; } break; @@ -11561,9 +12005,11 @@ validate_elem_move_from_field_or_ref (cb_tree src, cb_tree dst) case CB_CATEGORY_ALPHABETIC: return MOVE_INVALID; case CB_CATEGORY_ALPHANUMERIC_EDITED: + case CB_CATEGORY_NATIONAL_EDITED: is_numeric_edited = 1; - /* Drop through */ + /* Fall through */ case CB_CATEGORY_ALPHANUMERIC: + case CB_CATEGORY_NATIONAL: if (!fsrc->pic) { return MOVE_INVALID_NO_MESSAGE; } @@ -11575,7 +12021,7 @@ validate_elem_move_from_field_or_ref (cb_tree src, cb_tree dst) break; } if (is_numeric_edited) { - dst_size = count_pic_alphanumeric_edited (fdst); + dst_size = count_pic_edited (fdst); } else { dst_size = fdst->size; } @@ -11621,21 +12067,26 @@ validate_move_from_field_or_ref (cb_tree src, cb_tree dst) struct cb_field *fdst; struct cb_field *fsrc; cb_tree loc = src->source_line ? src : dst; + int dst_size; + signed int src_size; fdst = CB_FIELD_PTR (dst); /* Check dst not constant */ if (fdst->flag_internal_constant || fdst->flag_constant) { return MOVE_INVALID; } - if (CB_REFERENCE_P(src) && - CB_ALPHABET_NAME_P(CB_REFERENCE(src)->value)) { - return MOVE_OK; - } - if (CB_REFERENCE_P(src) && - CB_FILE_P(CB_REFERENCE(src)->value)) { - return MOVE_INVALID; + if (CB_REFERENCE_P(src)) { + cb_tree val = CB_REFERENCE(src)->value; + if (CB_ALPHABET_NAME_P (val)) { + return MOVE_OK; + } + if (!CB_FIELD_P (val)) { + return MOVE_INVALID; + } + fsrc = CB_FIELD (val); + } else { + fsrc = CB_FIELD (src); } - fsrc = CB_FIELD_PTR (src); if (cb_move_ibm) { /* This MOVE result is exactly as on IBM, ignore overlapping */ @@ -11646,9 +12097,17 @@ validate_move_from_field_or_ref (cb_tree src, cb_tree dst) warn_overlapping_move (loc); } + src_size = cb_field_size (src); + if (CB_TREE_CATEGORY (src) == CB_CATEGORY_NATIONAL) { + src_size /= COB_NATIONAL_SIZE; + } + dst_size = cb_field_size (dst); + if (CB_TREE_CATEGORY (dst) == CB_CATEGORY_NATIONAL) { + dst_size /= COB_NATIONAL_SIZE; + } + if (fsrc->children || fdst->children) { - return validate_non_elem_move_from_field_or_ref (cb_field_size (src), - cb_field_size (dst)); + return validate_non_elem_move_from_field_or_ref (src_size, dst_size); } else { return validate_elem_move_from_field_or_ref (src, dst); } @@ -11790,6 +12249,11 @@ validate_move (cb_tree src, cb_tree dst, const unsigned int is_value, int *move_ _("alphanumeric value is expected")); return 0; + case MOVE_NATIONAL_EXPECTED: + move_warning (src, dst, is_value, cb_warn_strict_typing, 0, + _("national value is expected")); + return 0; + case MOVE_VALUE_NOT_FIT_PIC: move_warning (src, dst, is_value, cb_warn_truncate, 0, _("value does not fit the picture string")); @@ -12058,10 +12522,11 @@ cob_put_sign_ascii (unsigned char *p) } #endif +/* does an EBCDIC overpunch with the expected character values */ static void cob_put_sign_ebcdic (unsigned char *p, const int sign) { - if (sign < 0) { + if (sign == -1) { switch (*p) { case '0': *p = (unsigned char)'}'; @@ -12094,7 +12559,7 @@ cob_put_sign_ebcdic (unsigned char *p, const int sign) *p = (unsigned char)'R'; return; default: - /* What to do here */ + /* What to do here? */ *p = (unsigned char)'}'; return; } @@ -12140,21 +12605,16 @@ cob_put_sign_ebcdic (unsigned char *p, const int sign) static cb_tree cb_build_move_literal (cb_tree src, cb_tree dst) { - struct cb_literal *l; - struct cb_field *f; + const struct cb_literal *l = CB_LITERAL (src); + const struct cb_field *f = CB_FIELD_PTR (dst); + const enum cb_category cat = CB_TREE_CATEGORY (dst); + unsigned char *buff; - unsigned char *p; - enum cb_category cat; + unsigned char bbyte; struct cb_reference *r; int i; - int diff; int val; int n; - unsigned char bbyte; - - l = CB_LITERAL (src); - f = CB_FIELD_PTR (dst); - cat = CB_TREE_CATEGORY (dst); if (f->flag_any_length) { return CB_BUILD_FUNCALL_2 ("cob_move", src, dst); @@ -12216,15 +12676,14 @@ cb_build_move_literal (cb_tree src, cb_tree dst) if (( cat == CB_CATEGORY_NUMERIC && f->usage == CB_USAGE_DISPLAY && f->pic->scale == l->scale - && !f->flag_sign_leading - && !f->flag_sign_separate - && !f->flag_blank_zero) + && !f->flag_sign_separate) || ( (cat == CB_CATEGORY_ALPHABETIC || cat == CB_CATEGORY_ALPHANUMERIC) && f->size < (int) (l->size + 16) && !cb_field_variable_size (f))) { + const int diff = (int) (f->size - l->size); buff = cobc_parse_malloc ((size_t)f->size); - diff = (int) (f->size - l->size); if (cat == CB_CATEGORY_NUMERIC) { + unsigned char *p; if (diff <= 0) { memcpy (buff, l->data - diff, (size_t)f->size); } else { @@ -12240,16 +12699,25 @@ cb_build_move_literal (cb_tree src, cb_tree dst) } } if (f->pic->have_sign) { - p = &buff[f->size - 1]; + if (f->flag_sign_leading) { + p = buff; + } else { + p = buff + f->size - 1; + } +#if 0 /* Simon: negative zero back by disabling the following code +´ included without documentation by Roger in 2.0 */ if (!n) { /* Zeros */ /* EBCDIC - store sign otherwise nothing */ if (cb_ebcdic_sign) { cob_put_sign_ebcdic (p, 1); } - } else if (cb_ebcdic_sign) { + } else +#endif + if (cb_ebcdic_sign) { cob_put_sign_ebcdic (p, l->sign); - } else if (l->sign < 0) { + } else + if (l->sign == -1) { #ifdef COB_EBCDIC_MACHINE cob_put_sign_ascii (p); #else @@ -12257,6 +12725,13 @@ cb_build_move_literal (cb_tree src, cb_tree dst) #endif } } + if (f->flag_blank_zero && !n) { + cobc_parse_free (buff); + return CB_BUILD_FUNCALL_3 ("memset", + CB_BUILD_CAST_ADDRESS (dst), + cb_int (' '), + CB_BUILD_CAST_LENGTH (dst)); + } } else { if (f->flag_justified) { if (diff <= 0) { @@ -12323,6 +12798,7 @@ cb_build_move_literal (cb_tree src, cb_tree dst) val /= 10; } if (val == 0) { + /* binary cannot store negative zero */ return cb_build_move_num_zero (dst); } if (val < 0 && !f->pic->have_sign) { @@ -12369,11 +12845,11 @@ cb_build_move_literal (cb_tree src, cb_tree dst) if (f->pic->scale < 0) { return CB_BUILD_FUNCALL_2 ("cob_move", src, dst); } - val = cb_get_int (src); n = f->pic->scale - l->scale; if ((l->size + n) > 9) { return CB_BUILD_FUNCALL_2 ("cob_move", src, dst); } + val = cb_get_int (src); for (; n > 0; n--) { val *= 10; } @@ -12400,19 +12876,32 @@ cb_build_move_literal (cb_tree src, cb_tree dst) static cb_tree cb_build_move_field (cb_tree src, cb_tree dst) { - struct cb_field *src_f; - struct cb_field *dst_f; + const struct cb_field *src_f = CB_FIELD_PTR (src); + const struct cb_field *dst_f = CB_FIELD_PTR (dst); int src_size; int dst_size; - src_f = CB_FIELD_PTR (src); - dst_f = CB_FIELD_PTR (dst); - if (dst_f->flag_any_length || src_f->flag_any_length) { return CB_BUILD_FUNCALL_2 ("cob_move", src, dst); } src_size = cb_field_size (src); dst_size = cb_field_size (dst); + if (src_size == -1 + && dst_size == -1 + && CB_REFERENCE_P (src) + && CB_REFERENCE_P (dst)) { + /* check for same length, allowing us to do an optimized copy + case: MOVE VAR1 (POS1:LEN) TO VAR2 (POS2:LEN) */ + const struct cb_reference *r_src = CB_REFERENCE (src); + const struct cb_reference *r_dst = CB_REFERENCE (dst); + if (r_src->length && r_dst->length + && CB_REFERENCE_P (r_src->length) + && CB_REFERENCE_P (r_dst->length) + && CB_REFERENCE (r_src->length)->value + == CB_REFERENCE (r_dst->length)->value) { + src_size = dst_size = 1; + } + } if (src_size > 0 && dst_size > 0 && src_size >= dst_size && !cb_field_variable_size (src_f) && !cb_field_variable_size (dst_f)) { @@ -12457,6 +12946,17 @@ cb_build_move_field (cb_tree src, cb_tree dst) } } + if ( (src_f->usage == CB_USAGE_PACKED + || src_f->usage == CB_USAGE_COMP_6) + && (dst_f->usage == CB_USAGE_PACKED + || dst_f->usage == CB_USAGE_COMP_6)) { + /* TODO: add handling of negative scales to cob_move_bcd */ + if (src_f->pic->scale >= 0 + && dst_f->pic->scale >= 0) { + return CB_BUILD_FUNCALL_2 ("cob_move_bcd", src, dst); + } + } + return CB_BUILD_FUNCALL_2 ("cob_move", src, dst); } @@ -12468,8 +12968,8 @@ cb_build_move (cb_tree src, cb_tree dst) cb_tree ret; int move_zero; - if (CB_INVALID_TREE(src) - || CB_INVALID_TREE(dst)) { + if (CB_INVALID_TREE (src) + || CB_INVALID_TREE (dst)) { return cb_error_node; } @@ -12487,8 +12987,8 @@ cb_build_move (cb_tree src, cb_tree dst) } else if (CB_LITERAL_P (src)) { /* FIXME: don't do this for a DYNAMIC LENGTH target */ const struct cb_literal* lit = CB_LITERAL (src); - char* p = (char*)lit->data; - char* end = p + lit->size - 1; + char *p = (char*)lit->data; + char *end = p + lit->size - 1; if (*end == ' ') { while (p < end && *p == ' ') p++; if (p == end) src = cb_space; @@ -12496,6 +12996,7 @@ cb_build_move (cb_tree src, cb_tree dst) } if (current_program->flag_report) { + /* FIXME: way too much for SUM field */ src = cb_check_sum_field (src); dst = cb_check_sum_field (dst); } @@ -12672,8 +13173,10 @@ cb_emit_move (cb_tree src, cb_tree dsts) return; } + /* Validate source, if requested. */ cb_emit_incompat_data_checks (src); - /* CHECKME: this is way to much to cater for sum field */ + + /* FIXME: this is way to much to cater for sum field */ src = cb_check_sum_field (src); tempval = 0; @@ -13300,6 +13803,7 @@ search_set_keys (struct cb_field *f, cb_tree x) for (i = 0; i < f->nkeys; ++i) { if (fldx == CB_FIELD_PTR (f->keys[i].key)) { + /* TODO: detach bound check here, but not for KEY (IDX(other)) */ f->keys[i].ref = p->x; f->keys[i].val = p->y; break; @@ -13392,7 +13896,7 @@ cb_search_ready (const cb_tree table) cb_tree cb_emit_search (cb_tree table, cb_tree varying, cb_tree at_end, cb_tree whens) { - cb_tree search; + cb_tree x; if (cb_validate_one (table) || cb_validate_one (varying) @@ -13404,9 +13908,9 @@ cb_emit_search (cb_tree table, cb_tree varying, cb_tree at_end, cb_tree whens) if (at_end) { cb_check_needs_break (CB_PAIR_Y (at_end)); } - search = cb_emit (cb_build_search (0, table, varying, at_end, whens)); + x = cb_emit (cb_build_search (0, table, varying, at_end, whens)); cb_search_ready (NULL); - return search; + return x; } cb_tree @@ -13414,7 +13918,6 @@ cb_emit_search_all (cb_tree table, cb_tree at_end, cb_tree when, cb_tree stmts) { cb_tree x; cb_tree stmt_lis; - cb_tree search; if (cb_validate_one (table) || when == cb_error_node) { @@ -13430,9 +13933,9 @@ cb_emit_search_all (cb_tree table, cb_tree at_end, cb_tree when, cb_tree stmts) cb_check_needs_break (CB_PAIR_Y (at_end)); } x = cb_build_if (x, stmt_lis, NULL, STMT_WHEN); - search = cb_emit (cb_build_search (1, table, NULL, at_end, x)); + x = cb_emit (cb_build_search (1, table, NULL, at_end, x)); cb_search_ready (NULL); - return search; + return x; } /* SET statement */ @@ -13461,7 +13964,9 @@ cb_emit_check_index (cb_tree vars, int hasval, int setval) || setval < p->occurs_min) { cb_warning_x (COBC_WARN_FILLER, l, _("SET %s TO %d is out of bounds"), f->name, setval); - cb_emit (CB_BUILD_FUNCALL_1("cob_set_exception", cb_int(COB_EC_RANGE_INDEX))); +#if 0 /* FIXME: add back as option, because not conforming to ISO */ + cb_emit (CB_BUILD_FUNCALL_1 ("cob_set_exception", cb_int (COB_EC_RANGE_INDEX))); +#endif } if (setval >= p->occurs_min) continue; } @@ -13570,30 +14075,31 @@ cb_check_set_to (cb_tree vars, cb_tree x, const int emit_error) } void -cb_emit_set_to (cb_tree vars, cb_tree x) +cb_emit_set_to (cb_tree vars, cb_tree src) { cb_tree l; int hasval, setval; - if (cb_check_set_to (vars, x, 1)) { + /* Emit statements only if targets have the correct class. */ + if (cb_check_set_to (vars, src, 1)) { return; } - /* Emit statements if targets have the correct class. */ + /* Validate source, if requested. */ + cb_emit_incompat_data_checks (src); + + /* Emit statements. */ for (l = vars; l; l = CB_CHAIN (l)) { - cb_emit_incompat_data_checks (x); - cb_emit (cb_build_move (x, CB_VALUE (l))); + cb_emit (cb_build_move (src, CB_VALUE (l))); } + hasval = setval = 0; - if (CB_LITERAL_P (x)) { - if (CB_NUMERIC_LITERAL_P (x)) { - if (CB_LITERAL(x)->scale != 0) { - cb_warning_x (COBC_WARN_FILLER, x, _("SET TO should be an integer")); - } - setval = cb_get_int (x); + if (CB_LITERAL_P (src)) { + if (CB_NUMERIC_LITERAL_P (src)) { + setval = cb_get_int (src); hasval = 1; } - } else if (x == cb_zero) { + } else if (src == cb_zero) { hasval = 1; } if (CB_EXCEPTION_ENABLE (COB_EC_BOUND_SUBSCRIPT)) { @@ -13722,15 +14228,16 @@ cb_emit_set_to_fcdkey (cb_tree vars, cb_tree x) /* Emit statements if targets have the correct class. */ for (l = vars; l; l = CB_CHAIN (l)) { - tree_class = cb_tree_class (CB_VALUE (l)); + cb_tree target = CB_VALUE (l); + tree_class = cb_tree_class (target); switch (tree_class) { case CB_CLASS_POINTER: - cb_emit (CB_BUILD_FUNCALL_2 ("cob_file_fcdkey_adrs", file, cb_build_address (CB_VALUE (l)))); + cb_emit (CB_BUILD_FUNCALL_2 ("cob_file_fcdkey_adrs", file, cb_build_address (target))); break; default: if (CB_VALUE (l) != cb_error_node) { cb_error_x (CB_TREE (current_statement), - _("SET target '%s' is not a POINTER for FCD-KEYDEF"), cb_name (CB_VALUE(l))); + _("SET target '%s' is not a POINTER for FCD-KEYDEF"), cb_name (target)); } break; } @@ -13746,10 +14253,11 @@ cb_emit_set_up_down (cb_tree l, cb_tree flag, cb_tree x) } cb_check_list (l); for (; l; l = CB_CHAIN (l)) { + cb_tree target = CB_VALUE (l); if (flag == cb_int0) { - cb_emit (cb_build_add (CB_VALUE (l), x, cb_int0)); + cb_emit (cb_build_add (target, x, cb_int0)); } else { - cb_emit (cb_build_sub (CB_VALUE (l), x, cb_int0)); + cb_emit (cb_build_sub (target, x, cb_int0)); } } if (CB_EXCEPTION_ENABLE (COB_EC_RANGE_INDEX)) { @@ -13807,10 +14315,10 @@ cb_emit_set_true (cb_tree l) void cb_emit_set_false (cb_tree l) { - cb_tree x; struct cb_field *f; cb_tree ref; cb_tree val; + cb_tree x; for (; l; l = CB_CHAIN (l)) { x = CB_VALUE (l); @@ -14588,8 +15096,8 @@ cb_emit_write (cb_tree record, cb_tree from, cb_tree opt, cb_tree lockopt) && f->flag_line_adv == 0) { f->flag_line_adv = COB_LINE_ADVANCE; /* Default to LINE ADVANCING */ } - if (current_statement->handler_type == EOP_HANDLER && - current_statement->ex_handler) { + if (current_statement->handler_type == EOP_HANDLER + && current_statement->ex_handler) { check_eop = cb_int1; } else { check_eop = cb_int0; diff --git a/config/ChangeLog b/config/ChangeLog index 9a8377dbe..fc9989490 100644 --- a/config/ChangeLog +++ b/config/ChangeLog @@ -4,6 +4,11 @@ * runtime.cfg: dropped not available "varfix_format", see "fixrel_format" instead; minor reformatting/rewording +2023-03-22 Simon Sobisch + + * rm-strict.conf: enable line-col-zero-default per RM-COBOL Language + Reference for POSITION with implied zero + 2023-02-21 Simon Sobisch * rm-strict.conf: enable indirect-redefines as this was added @@ -43,6 +48,10 @@ * gcos.words: complete update * general: added missing alias JUST=JUSTIFIED +2023-01-16 Simon Sobisch + + * realia-strict.conf: change defaultbyte from space to zero + 2022-12-07 Nicolas Berthier * general: rename partial-replacing-with-literal into @@ -829,7 +838,7 @@ * default.inc, Makefile.am: New files. -Copyright 2003,2005-2007-2010,2014-2022,2024 Free Software Foundation, Inc. +Copyright 2003,2005-2007-2010,2014-2024 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted provided the copyright notice and this notice are preserved. diff --git a/config/cobol2002.conf b/config/cobol2002.conf index 4e93e0e13..07b6808e5 100644 --- a/config/cobol2002.conf +++ b/config/cobol2002.conf @@ -286,7 +286,7 @@ self-call-recursive: skip record-contains-depending-clause: unconformable align-record: 0 align-opt: no -defaultbyte: none # "undefined" +defaultbyte: none # initial storage is undefined picture-l: unconformable # archaic in COBOL2002 and currently not available as dialect features: diff --git a/config/cobol2014.conf b/config/cobol2014.conf index b4754036d..5e2f19ba6 100644 --- a/config/cobol2014.conf +++ b/config/cobol2014.conf @@ -286,7 +286,7 @@ self-call-recursive: skip record-contains-depending-clause: unconformable align-record: 0 align-opt: no -defaultbyte: none # "undefined" +defaultbyte: none # initial storage is undefined picture-l: unconformable # use fixed word list, synonyms and exceptions specified there diff --git a/config/cobol85.conf b/config/cobol85.conf index 47ab1d50d..b8320d0aa 100644 --- a/config/cobol85.conf +++ b/config/cobol85.conf @@ -286,7 +286,7 @@ self-call-recursive: skip record-contains-depending-clause: unconformable align-record: 0 align-opt: no -defaultbyte: none # "undefined" +defaultbyte: none # initial storage is undefined picture-l: unconformable # obsolete in COBOL85 and currently not available as dialect features: diff --git a/config/default.conf b/config/default.conf index 3354f8460..5058325e2 100644 --- a/config/default.conf +++ b/config/default.conf @@ -1,6 +1,6 @@ # GnuCOBOL compiler configuration # -# Copyright (C) 2001-2012, 2014-2022 Free Software Foundation, Inc. +# Copyright (C) 2001-2012, 2014-2023 Free Software Foundation, Inc. # Written by Keisuke Nishida, Roger While, Simon Sobisch, Edward Hart, # Ron Norman # @@ -309,7 +309,8 @@ self-call-recursive: skip record-contains-depending-clause: unconformable align-record: 0 align-opt: no -defaultbyte: init +defaultbyte: init # GC inits as INITIALIZE ALL TO VALUE THEN TO DEFAULT, + # with INDEXED BY variables initialized to 1 picture-l: ok # use complete word list; synonyms and exceptions are specified below diff --git a/config/gcos-strict.conf b/config/gcos-strict.conf index 67c5fb1c5..a2000119c 100644 --- a/config/gcos-strict.conf +++ b/config/gcos-strict.conf @@ -272,7 +272,7 @@ sequential-delimiters: ok record-sequential-advancing: ok # TODO: verify record-delim-with-fixed-recs: unconformable missing-statement: error -missing-period: error #when format not in {fixed,free} +missing-period: error # when format not in {fixed,free} zero-length-literals: unconformable xml-generate-extra-phrases: unconformable continue-after: unconformable diff --git a/config/ibm.words b/config/ibm.words index 228ce30e4..ad466f692 100644 --- a/config/ibm.words +++ b/config/ibm.words @@ -357,7 +357,7 @@ reserved: PLUS reserved: POINTER #reserved: POINTER-24 # potentially reserved #reserved: POINTER-31 # potentially reserved -reserved: POINTER-32 X +reserved: POINTER-32 #reserved: POINTER-64 # potentially reserved reserved: POSITION reserved: POSITIVE diff --git a/config/mf-strict.conf b/config/mf-strict.conf index 88ee9c353..a28a181ee 100644 --- a/config/mf-strict.conf +++ b/config/mf-strict.conf @@ -41,7 +41,7 @@ numeric-literal-length: 18 pic-length: 50 # Enable AREACHECK by default, for reference formats other than {fixed,free} -areacheck: no #not verified yet +areacheck: no # Default assign type # Value: 'dynamic', 'external' diff --git a/config/realia-strict.conf b/config/realia-strict.conf index f354fcccb..f9c7d6bbf 100644 --- a/config/realia-strict.conf +++ b/config/realia-strict.conf @@ -1,6 +1,6 @@ # GnuCOBOL compiler configuration # -# Copyright (C) 2001-2012, 2014-2022 Free Software Foundation, Inc. +# Copyright (C) 2001-2012, 2014-2023 Free Software Foundation, Inc. # Written by Keisuke Nishida, Roger While, Simon Sobisch, Edward Hart, # Ron Norman # @@ -291,7 +291,7 @@ self-call-recursive: skip record-contains-depending-clause: unconformable align-record: 0 align-opt: no -defaultbyte: " " # not verified, but possibly like ACU/MF +defaultbyte: 0 # not verified, but likely like IBM picture-l: unconformable # use fixed word list, synonyms and exceptions specified there diff --git a/config/rm-strict.conf b/config/rm-strict.conf index 274ae167e..5b2b19279 100644 --- a/config/rm-strict.conf +++ b/config/rm-strict.conf @@ -165,7 +165,7 @@ no-echo-means-secure: no # If yes, the first item in a field screen ACCEPT/DISPLAY (e.g. DISPLAY x UPON # CRT) is located after the previous ACCEPT/DISPLAY (as though LINE 0 COL 0 had # been specified). -line-col-zero-default: no +line-col-zero-default: yes # If yes, then REPORT, COLUMN may have any of PLUS num, + num, or +num # to define a relative column position diff --git a/configure.ac b/configure.ac index 353650e5f..d194103fa 100644 --- a/configure.ac +++ b/configure.ac @@ -61,7 +61,7 @@ AC_CONFIG_FILES([tests/run_prog_manual.sh], # Note for SUN Solaris (gcc) # options to configure: CC="gcc -m64" --libdir=/usr/local/lib/sparcv9 # or: -# options to configure: CFLAGS=-m64 and LDFLAGS="-m64 -L/usr/local/lib/sparcv9" +# options to configure: CFLAGS=-m64 LDFLAGS="-m64 -L/usr/local/lib/sparcv9" # # Hack for AIX 64 bit (gcc) # Required - @@ -169,6 +169,7 @@ AH_TEMPLATE([USE_LIBDL], [Use system dynamic loader]) AH_TEMPLATE([WITH_VARSEQ], [Define variable sequential file format]) AH_TEMPLATE([HAVE_ATTRIBUTE_ALIGNED], [Has __attribute__((aligned))]) AH_TEMPLATE([HAVE_ATTRIBUTE_PURE], [Has __attribute__((pure))]) +AH_TEMPLATE([HAVE_ATTRIBUTE_CONSTRUCTOR], [Has __attribute__((constructor))]) AH_TEMPLATE([HAVE_TIMEZONE], [Has timezone variable]) AH_TEMPLATE([COB_OBJECT_EXT], [Object extension]) AH_TEMPLATE([COB_MODULE_EXT], [Module extension]) @@ -219,7 +220,7 @@ AC_ARG_ENABLE([hardening], AC_ARG_ENABLE([experimental], [AS_HELP_STRING([--enable-experimental], [Enable experimental code (Developers only!)])], - [if test "$enable_experimental" = "yes"; then + [if test "$enable_experimental" = yes; then AC_DEFINE([COB_EXPERIMENTAL], [1]) fi], []) @@ -227,7 +228,7 @@ AC_ARG_ENABLE([experimental], AC_ARG_ENABLE([cobc-internal-checks], [AS_HELP_STRING([--enable-cobc-internal-checks], [Enable extra checks within the compiler (Developers only!)])], - [if test "$enable_cobc_internal_checks" = "yes"; then + [if test "$enable_cobc_internal_checks" = yes; then AC_DEFINE([COB_TREE_DEBUG], [1]) fi], []) @@ -235,7 +236,7 @@ AC_ARG_ENABLE([cobc-internal-checks], AC_ARG_ENABLE([debuglog], [AS_HELP_STRING([--enable-debuglog], [Enable internal logging code (Developers only!)])], - [if test "$enable_debuglog" = "yes"; then + [if test "$enable_debuglog" = yes; then AC_DEFINE([COB_DEBUG_LOG], [1]) fi], []) @@ -243,7 +244,7 @@ AC_ARG_ENABLE([debuglog], AC_ARG_ENABLE([param-check], [AS_HELP_STRING([--enable-param-check], [Enable minimum parameter check for system libraries (default no)])], - [if test "$enable_param_check" = "yes"; then + [if test "$enable_param_check" = yes; then AC_DEFINE([COB_PARAM_CHECK], [1]) fi], []) @@ -252,16 +253,16 @@ AC_ARG_WITH([patch-level], [AS_HELP_STRING([--with-patch-level], [Define a patch level (default 0), numeric, max. 8 digits])], [case $with_patch_level in - yes) AC_MSG_ERROR([[You must give --with-patch-level an argument.]]) + yes) AC_MSG_ERROR([[--with-patch-level needs an argument]]) ;; - no) AC_MSG_ERROR([[--without-patch-level not supported.]]) + no) AC_MSG_ERROR([[--without-patch-level not supported]]) ;; [[0-9]]*) if test $with_patch_level -gt 99999999; then - AC_MSG_ERROR([[Patch level must not contain more than 8 digits]]) + AC_MSG_ERROR([[patch level must not contain more than 8 digits]]) fi ;; - *) AC_MSG_ERROR([[You must use a numeric patch level]]) + *) AC_MSG_ERROR([[patch level must be numeric]]) ;; esac], [with_patch_level=0]) @@ -272,13 +273,13 @@ AC_ARG_WITH([max-call-params], [AS_HELP_STRING([--with-max-call-params], [Define maximum number of parameters for CALL (default 192)])], [case $with_max_call_params in - yes) AC_MSG_ERROR([[You must give --with-max-call-params an argument.]]) + yes) AC_MSG_ERROR([[--with-max-call-params needs an argument]]) ;; - no) AC_MSG_ERROR([[--without-max-call-params not supported.]]) + no) AC_MSG_ERROR([[--without-max-call-params not supported]]) ;; 16 | 36 | 56 | 76 | 96 | 192 | 252) ;; - *) AC_MSG_ERROR([[Maximum number of parameters for CALL must be one of 16/36/56/76/96/192/252]]) + *) AC_MSG_ERROR([[maximum number of parameters for CALL must be one of 16/36/56/76/96/192/252]]) ;; esac], [with_max_call_params=192]) @@ -352,7 +353,7 @@ _am_result=no ['0:target executed'], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]) - AC_MSG_ERROR([make, configured as "$MAKE", does not work])]) + AC_MSG_FAILURE([make, configured as "$MAKE", does not work])]) rm -f confmake.out confmf.mk AC_MSG_CHECKING([whether ${MAKE} supports order-only prerequisites]) @@ -374,10 +375,10 @@ _am_result=no __am_checkme=$(echo `cat confinc.out 2>/dev/null`) AS_CASE([$?:${__am_checkme}], ['0:target am__prereq. target confprereq. target am__doit. target am__prereq. target am__doit.'], - [_am_result="yes"]) + [_am_result=yes]) rm -f confinc.* confmf.mk confprereq AC_MSG_RESULT([${_am_result}]) -AM_CONDITIONAL([MAKE_HAS_PREREQ_ONLY], [test "${_am_result}" = "yes"]) +AM_CONDITIONAL([MAKE_HAS_PREREQ_ONLY], [test "${_am_result}" = yes]) curr_libs="$LIBS" @@ -396,77 +397,161 @@ dnl Default CFLAGS (removed -g set in AC_INIT for compatibility) AC_PROG_CC([gcc icc xlc cc]) -dnl no explict usage of CPP var -dnl AC_PROG_CPP +AC_USE_SYSTEM_EXTENSIONS + + +# Check for the compiler used +dnl COB_USES_GCC=no +COB_USES_GCC_NO_ICC=no +COB_USES_ICC_ONLY=no +COB_USES_CLANG_ONLY=no +COB_USES_XLC_ONLY=no +COB_USES_WATCOMC_ONLY=no + +dnl AC_MSG_CHECKING([for __GNUC__]) +dnl AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ +dnl #ifndef __GNUC__ +dnl # error macro not defined +dnl #endif]])], +dnl [COB_USES_GCC=yes +dnl AC_MSG_RESULT([yes])], +dnl [AC_MSG_RESULT([no])]) +COB_USES_GCC=$GCC + +AC_MSG_CHECKING([for __INTEL_COMPILER]) +AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ + #ifndef __INTEL_COMPILER + # error macro not defined + #endif]])], + [COB_USES_ICC_ONLY=yes + AC_MSG_RESULT([yes])], + [if test "$COB_USES_GCC" = yes; then + COB_USES_GCC_NO_ICC=yes + fi + AC_MSG_RESULT([no])] + ) + +AC_MSG_CHECKING([for __clang__]) +AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ + #ifndef __clang__ + # error macro not defined + #endif]])], + [COB_USES_CLANG_ONLY=yes + AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no])]) + +AC_MSG_CHECKING([for __xlc__]) +AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ + #ifndef __xlc__ + # error macro not defined + #endif]])], + [COB_USES_XLC_ONLY=yes + AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no])]) + +AC_MSG_CHECKING([for __WATCOMC__]) +AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ + #ifndef __WATCOMC__ + # error macro not defined + #endif]])], + [COB_USES_WATCOMC_ONLY=yes + AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no])]) + +AC_MSG_CHECKING([for __SUNPRO_C]) +AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ + #ifndef __SUNPRO_C + # error macro not defined + #endif]])], + [COB_USES_SUNPRO_C_ONLY=yes + AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no])]) + +curr_cflags="$CFLAGS" +AC_CACHE_CHECK([how to error on warnings during configure checks], gc_cv_err_warn, [ + if test "$COB_USES_GCC" = yes -o "$COB_USES_WATCOMC_ONLY" = yes; then + # COB_USES_GCC is also set with clang and icc + ERRWARN="-Wall -Werror" + elif test "$COB_USES_XLC_ONLY" = yes; then + ERRWARN="-qhalt=w" + elif test "$COB_USES_SUNPRO_C_ONLY" = yes; then + ERRWARN="-errwarn=%all" + else + ERRWARN="" + fi + CFLAGS="$CFLAGS $ERRWARN" + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[return 0;]])], + [gc_cv_err_warn="$ERRWARN"], + [gc_cv_err_warn=""]) + ]) + ERRWARN="$gc_cv_err_warn" # save what we have so far as it is quite "constant" AC_CACHE_SAVE -AC_USE_SYSTEM_EXTENSIONS # ## general flags for compiler and linker and tests for those # -# Note: this and the following checks don't check for stderr and don't need to produce -# a working compiler - but need to produce something that passes make check -# FIXME: add checking with stderr here, add an option to skip this part with a warning message +CFLAGS="$curr_cflags $ERRWARN" AC_ARG_VAR([COBC_CPPFLAGS], [see CPPFLAGS, but only applied during generation of cobc]) AS_IF([test "x$COBC_CPPFLAGS" != x], [ - AC_MSG_CHECKING([if compilation with COBC_CPPFLAGS works]) + AC_MSG_CHECKING([whether compilation with COBC_CPPFLAGS works]) curr_cppflags="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $COBC_CPPFLAGS" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], - [[static int i = 1;]])], + [[return 0;]])], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]) - AC_MSG_ERROR([not possible to compile with COBC_CPPFLAGS="$COBC_CPPFLAGS"])]) + AC_MSG_FAILURE([cannot compile with COBC_CPPFLAGS="$COBC_CPPFLAGS"])]) CPPFLAGS="$curr_cppflags" ]) AC_ARG_VAR([LIBCOB_CPPFLAGS], [see CPPFLAGS, but only applied during generation of libcob]) AS_IF([test "x$LIBCOB_CPPFLAGS" != x], [ - AC_MSG_CHECKING([if compilation with LIBCOB_CPPFLAGS works]) + AC_MSG_CHECKING([whether compilation with LIBCOB_CPPFLAGS works]) curr_cppflags="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $LIBCOB_CPPFLAGS" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], - [[static int i = 1;]])], + [[return 0;]])], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]) - AC_MSG_ERROR([not possible to compile with LIBCOB_CPPFLAGS="$LIBCOB_CPPFLAGS"])]) + AC_MSG_FAILURE([cannot compile with LIBCOB_CPPFLAGS="$LIBCOB_CPPFLAGS"])]) CPPFLAGS="$curr_cppflags" ]) AS_IF([test "x$LDFLAGS" != "x" -o "x$LIBS" != "x"], [ - AC_MSG_CHECKING([if linking with LDFLAGS / LIBS works]) + AC_MSG_CHECKING([whether linking with LDFLAGS / LIBS works]) AC_LINK_IFELSE([AC_LANG_PROGRAM([], [[return 0;]])], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]) - AC_MSG_ERROR([not possible to link with LDFLAGS="$LDFLAGS", / LIBS="$LIBS"])]) + AC_MSG_FAILURE([cannot link with LDFLAGS="$LDFLAGS", / LIBS="$LIBS"])]) ]) curr_libs="$LIBS" AC_ARG_VAR([LIBCOB_LIBS], [see LIBS, but only applied during generation of libcob]) AS_IF([test "x$LIBCOB_LIBS" != x], [ - AC_MSG_CHECKING([if linking with LIBCOB_LIBS works]) + AC_MSG_CHECKING([whether linking with LIBCOB_LIBS works]) LIBS="$LIBS $LIBCOB_LIBS" AC_LINK_IFELSE([AC_LANG_PROGRAM([], [[return 0;]])], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]) - AC_MSG_ERROR([not possible to link with LIBCOB_LIBS="$LIBCOB_LIBS"])]) + AC_MSG_FAILURE([cannot link with LIBCOB_LIBS="$LIBCOB_LIBS"])]) ]) AC_ARG_VAR([PROGRAMS_LIBS], [see LIBS, but only applied during generation of programs: cobc, cobcrun]) AS_IF([test "x$PROGRAMS_LIBS" != x], [ - AC_MSG_CHECKING([if linking with PROGRAMS_LIBS works]) + AC_MSG_CHECKING([whether linking with PROGRAMS_LIBS works]) LIBS="$LIBS $PROGRAMS_LIBS" AC_LINK_IFELSE([AC_LANG_PROGRAM([], [[return 0;]])], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]) - AC_MSG_ERROR([not possible to link with PROGRAMS_LIBS="$PROGRAMS_LIBS"])]) + AC_MSG_FAILURE([cannot link with PROGRAMS_LIBS="$PROGRAMS_LIBS"])]) ]) LIBS="$curr_libs" +CFLAGS="$curr_cflags" dnl only needed until automake 1.14 - but we don't have a check for the dnl minimal version, so leaving in @@ -508,8 +593,9 @@ case "$DIFF_FLAGS" in esac # Stop tests for C++ and Fortran -AC_DEFUN([AC_PROG_F77], []) AC_DEFUN([AC_PROG_CXX], []) +AC_DEFUN([AC_PROG_F77], []) + AC_PROG_LN_S AC_PROG_INSTALL @@ -556,7 +642,7 @@ AC_CACHE_CHECK([for inline keyword], gc_cv_keyword_inline, [ []) done] ) - AC_DEFINE_UNQUOTED([COB_KEYWORD_INLINE], [$gc_cv_keyword_inline]) +AC_DEFINE_UNQUOTED([COB_KEYWORD_INLINE], [$gc_cv_keyword_inline]) # Checks for library functions. @@ -566,6 +652,9 @@ AC_CHECK_FUNCS([memmove memset setlocale fcntl strerror strcasecmp \ getexecname canonicalize_file_name popen raise readlink realpath \ setenv strcoll flockfile]) +# more things to save... +AC_CACHE_SAVE + # Check for timezone AC_CACHE_CHECK([for timezone variable access], gc_cv_time_timezone, [ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], @@ -574,9 +663,9 @@ AC_CACHE_CHECK([for timezone variable access], gc_cv_time_timezone, [ [gc_cv_time_timezone=no] )] ) - if test "$gc_cv_time_timezone" = yes; then +if test "$gc_cv_time_timezone" = yes; then AC_DEFINE([HAVE_TIMEZONE], [1]) - fi +fi # Check for designated initializers AC_CACHE_CHECK([for designated initializers], gc_cv_designated_inits, [ @@ -589,70 +678,16 @@ AC_CACHE_CHECK([for designated initializers], gc_cv_designated_inits, [ [gc_cv_designated_inits=no] )] ) - if test "$gc_cv_designated_inits" = yes; then +if test "$gc_cv_designated_inits" = yes; then AC_DEFINE([HAVE_DESIGNATED_INITS], [1]) - fi - -# more things to save... -AC_CACHE_SAVE - -# Check for the compiler used -dnl COB_USES_GCC="no" -COB_USES_GCC_NO_ICC="no" -COB_USES_ICC_ONLY="no" -COB_USES_CLANG_ONLY="no" -COB_USES_XLC_ONLY="no" -COB_USES_WATCOMC_ONLY="no" - -dnl AC_MSG_CHECKING([for __GNUC__]) -dnl AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ -dnl #ifndef __GNUC__ -dnl # error macro not defined -dnl #endif]])], -dnl [COB_USES_GCC="yes" -dnl AC_MSG_RESULT([yes])], -dnl [AC_MSG_RESULT([no])]) -COB_USES_GCC=$GCC +fi -AC_MSG_CHECKING([for __INTEL_COMPILER]) -AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ - #ifndef __INTEL_COMPILER - # error macro not defined - #endif]])], - [COB_USES_ICC_ONLY=yes - AC_MSG_RESULT([yes])], - [if test "$COB_USES_GCC" = "yes"; then - COB_USES_GCC_NO_ICC="yes" - fi - AC_MSG_RESULT([no])] - ) +CFLAGS="$curr_cflags" -AC_MSG_CHECKING([for __clang__]) -AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ - #ifndef __clang__ - # error macro not defined - #endif]])], - [COB_USES_CLANG_ONLY="yes" - AC_MSG_RESULT([yes])], - [AC_MSG_RESULT([no])]) -AC_MSG_CHECKING([for __xlc__]) -AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ - #ifndef __xlc__ - # error macro not defined - #endif]])], - [COB_USES_XLC_ONLY="yes" - AC_MSG_RESULT([yes])], - [AC_MSG_RESULT([no])]) +# more things to save... +AC_CACHE_SAVE -AC_MSG_CHECKING([for __WATCOMC__]) -AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ - #ifndef __WATCOMC__ - # error macro not defined - #endif]])], - [COB_USES_WATCOMC_ONLY="yes" - AC_MSG_RESULT([yes])], - [AC_MSG_RESULT([no])]) if test "x$COB_CC" = x; then COB_CC="$CC" @@ -690,7 +725,7 @@ AC_MSG_NOTICE([Checks for math library ...]) # FIXME - Check for necessary math lib - in most cases they are part of the C library # for now: explicit pass them to configure via MATH_LIBS dnl if test "x$MATH_LIBS" = "x"; then -dnl if test "$COB_USES_ICC_ONLY" = "yes"; then +dnl if test "$COB_USES_ICC_ONLY" = yes; then dnl MATH_LIBS="-limf -lm" dnl else dnl curr_libs=$LIBS @@ -719,7 +754,7 @@ fi dnl Add --enable-code-coverage and test for code-coverage tools if enabled AX_CODE_COVERAGE -if test "$COB_USES_GCC_NO_ICC" != yes -a "$enable_code_coverage" = "yes"; then +if test "$COB_USES_GCC_NO_ICC" != yes -a "$enable_code_coverage" = yes; then AC_MSG_ERROR([Code coverage checks are only usable with GCC!]) fi @@ -737,13 +772,12 @@ AC_ARG_WITH([math], check (default), gmp, mpir])], [case "$with_math" in gmp | mpir | check) - USE_MATH="$with_math" ;; yes) - USE_MATH="check" + with_math=check ;; no) - AC_MSG_ERROR([Cannot build GnuCOBOL without math multiple precision library)]) + AC_MSG_ERROR([cannot build GnuCOBOL without math multiple precision library)]) ;; *) AC_MSG_ERROR([invalid value "$with_math" for --with-math, @@ -752,82 +786,86 @@ AC_ARG_WITH([math], check (use whatever library is usable)]) ;; esac], - [USE_MATH="check"]) + [with_math=check]) curr_libs=$LIBS curr_cppflags=$CPPFLAGS -AS_IF([test "$USE_MATH" = "gmp" -o "$USE_MATH" = "check"], [ +AS_IF([test "$with_math" = gmp -o "$with_math" = check], [ curr_libs="$LIBS"; curr_cppflags="$CPPFLAGS" PKG_CHECK_MODULES([GMP], [gmp], [], [ PKG_CHECK_MODULES([GMP], [libgmp], [], [# ]) ]) - if test -n "$GMP_CFLAGS"; then - CPPFLAGS="$CPPFLAGS $GMP_CFLAGS" - fi + # special case: as included by modules we don't want a single warning (breaks testsuite) + CPPFLAGS="$CPPFLAGS $GMP_CFLAGS $ERRWARN" if test -z "${GMP_LIBS+x}"; then GMP_LIBS="-lgmp" fi - LIBS="$LIBS $GMP_LIBS" + LIBS="$LIBS $LIBCOB_LIBS $GMP_LIBS" AC_CHECK_HEADERS([gmp.h], [ - AC_MSG_CHECKING([if linking against libgmp with "$GMP_LIBS" works]) + AC_MSG_CHECKING([whether linking against libgmp with "$GMP_LIBS" works]) AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[mpz_t integ; mpz_init (integ);]])], [AC_MSG_RESULT([yes]) - curr_cppflags=$CPPFLAGS # for the include in cobc generated modules + if test -n "$GMP_CFLAGS"; then + curr_cppflags="$curr_cppflags $GMP_CFLAGS" # for the include in cobc generated modules + fi LIBCOB_LIBS="$LIBCOB_LIBS $GMP_LIBS" - USE_MATH=gmp], + with_math=gmp], [AC_MSG_RESULT([no]) - if test "$USE_MATH" = "gmp"; then + if test "$with_math" = gmp; then AC_MSG_ERROR([[GMP is required for --with-math=gmp, you may adjust GMP_LIBS]]) fi LIBS="$curr_libs"; CPPFLAGS="$curr_cppflags"] ) - ], [if test "$USE_MATH" = "gmp"; then + ], [if test "$with_math" = gmp; then AC_MSG_ERROR([gmp.h is required for --with-math=gmp, you may adjust GMP_CFLAGS]) fi LIBS="$curr_libs"; CPPFLAGS="$curr_cppflags" ]) ]) -AS_IF([test "$USE_MATH" = "mpir" -o "$USE_MATH" = "check"], [ +AS_IF([test "$with_math" = mpir -o "$with_math" = check], [ # note: currently MPIR does not ship a .pc file, but is expected to follow GMP curr_libs="$LIBS"; curr_cppflags="$CPPFLAGS" PKG_CHECK_MODULES([MPIR], [mpir], [], [# ]) - if test -n "$MPIR_CFLAGS"; then - CPPFLAGS="$CPPFLAGS $MPIR_CFLAGS" - fi + # special case: as included by modules we don't want a single warning (breaks testsuite) + CPPFLAGS="$CPPFLAGS $MPIR_CFLAGS $ERRWARN" if test -z "${MPIR_LIBS+x}"; then MPIR_LIBS="-lmpir" fi - LIBS="$LIBS $MPIR_LIBS" + LIBS="$LIBS $LIBCOB_LIBS $MPIR_LIBS" AC_CHECK_HEADERS([mpir.h], [ - AC_MSG_CHECKING([if linking against libmpir with "$MPIR_LIBS" works]) + AC_MSG_CHECKING([whether linking against libmpir with "$MPIR_LIBS" works]) AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[mpz_t integ; mpz_init (integ);]])], [AC_MSG_RESULT([yes]) - curr_cppflags=$CPPFLAGS # for the include in cobc generated modules + if test -n "$MPIR_CFLAGS"; then + curr_cppflags="$curr_cppflags $MPIR_CFLAGS" # for the include in cobc generated modules + fi LIBCOB_LIBS="$LIBCOB_LIBS $MPIR_LIBS" - USE_MATH=mpir], + with_math=mpir], [AC_MSG_RESULT([no]) - if test "$USE_MATH" = "mpir"; then + if test "$with_math" = mpir; then AC_MSG_ERROR([[MPIR is required for --with-math=mpir, you may adjust MPIR_LIBS]]) fi LIBS="$curr_libs"; CPPFLAGS="$curr_cppflags"] ) - ], [if test "$USE_MATH" = "mpir"; then + ], [if test "$with_math" = mpir; then AC_MSG_ERROR([mpir.h is required for --with-math=mpir, you may adjust MPIR_CFLAGS]) fi LIBS="$curr_libs"; CPPFLAGS="$curr_cppflags" ]) ]) -if test "$USE_MATH" = "check"; then - AC_MSG_ERROR([neither GMP nor MPIR library are found, but one of those is mandatory]) +if test "$with_math" = check; then + AC_MSG_FAILURE([neither GMP nor MPIR library are found, but one of those is mandatory]) fi +CPPFLAGS="$CPPFLAGS $ERRWARN" + AC_MSG_CHECKING([matching GMP version]) # Check just major/minor levels between header and library # get GMP version from lib @@ -852,11 +890,11 @@ AC_RUN_IFELSE([AC_LANG_SOURCE([[ } ]])], [COB_GMP_LIB=$(./conftest$ac_exeext x)], - [AC_MSG_ERROR([Unable to extract GMP version information from gmp_version])], + [AC_MSG_ERROR([unable to extract GMP version information from gmp_version])], [AC_MSG_WARN([matching GMP version assumed])] COB_GMP_LIB="cross") if test "x$COB_GMP_LIB" = x; then - AC_MSG_ERROR([Unable to extract GMP version information (library)]) + AC_MSG_ERROR([unable to extract GMP version information (library)]) fi # get GMP version from header @@ -876,11 +914,11 @@ AC_RUN_IFELSE([AC_LANG_SOURCE([[ } ]])], [COB_GMP_HEADER=$(./conftest$ac_exeext x)], - [AC_MSG_ERROR([Unable to extract GMP version information from header])], + [AC_MSG_ERROR([unable to extract GMP version information from header])], [AC_MSG_WARN([cannot run test program while cross-compiling]) COB_GMP_HEADER="cross-compilation - assumed"]) if test "x$COB_GMP_HEADER" = x; then - AC_MSG_ERROR([Unable to extract GMP version information (header)]) + AC_MSG_ERROR([unable to extract GMP version information (header)]) fi COB_GMP_LIB_MAJOR=$(echo "$COB_GMP_LIB" | cut -d. -f1) @@ -890,19 +928,20 @@ if test "$COB_GMP_HEADER" = "$COB_GMP_LIB_MAJOR.$COB_GMP_LIB_MINOR" -o "$COB_GMP AC_MSG_RESULT([yes ($COB_GMP_HEADER)]) else AC_MSG_RESULT([no (header: $COB_GMP_HEADER / library: $COB_GMP_LIB)]) - AC_MSG_ERROR([Unable to use GMP - Please check config.log]) + AC_MSG_FAILURE([unable to use GMP]) fi -LIBS="$curr_libs" -CPPFLAGS="$curr_cppflags" - -AC_CHECK_LIB([$USE_MATH], [__gmp_get_memory_functions], +AC_CHECK_LIB([$with_math], [__gmp_get_memory_functions], [AC_DEFINE([HAVE_MP_GET_MEMORY_FUNCTIONS], [1])], [], []) AC_CHECK_LIB([readline], [readline], [AC_DEFINE([HAVE_READLINE], [1]) LIBCOB_LIBS="$LIBCOB_LIBS -lreadline" ], [], []) +LIBS="$curr_libs" +CPPFLAGS="$curr_cppflags" + + dnl dnl Configure options part II (needing compilation) dnl @@ -913,44 +952,41 @@ AC_ARG_WITH([xml2], [], [with_xml2=check]) -AS_IF([test "$with_xml2" = "yes" -o "$with_xml2" = "check"], [ +AS_IF([test "$with_xml2" = yes -o "$with_xml2" = check], [ PKG_CHECK_MODULES([XML2], [libxml-2.0], [], [ if test -z "${XML2_CFLAGS+x}" -o -z "${XML2_LIBS+x}"; then - AC_CHECK_PROG(xml2_config_found, xml2-config, "yes") - if test "$xml2_config_found" = "yes"; then - if test -z "${XML2_CFLAGS+x}"; then - XML2_CFLAGS="$(xml2-config --cflags)" + AC_PATH_PROG(XML2_CONFIG, xml2-config) + if test -n "$XML2_CONFIG"; then + if test -z "$XML2_CFLAGS"; then + XML2_CFLAGS="$($XML2_CONFIG --cflags)" fi - if test -z "${XML2_LIBS+x}"; then - XML2_LIBS="$(xml2-config --libs)" + if test -z "$XML2_LIBS"; then + XML2_LIBS="$($XML2_CONFIG --libs)" fi fi fi]) curr_libs="$LIBS"; curr_cppflags="$CPPFLAGS" - if test -n "$XML2_CFLAGS"; then - CPPFLAGS="$CPPFLAGS $XML2_CFLAGS" - fi + CPPFLAGS="$CPPFLAGS $XML2_CFLAGS" if test -z "${XML2_LIBS+x}"; then XML2_LIBS="-lxml2" fi - LIBS="$LIBS $XML2_LIBS" - # note: the include part is likely wrong, as PKG_CONFIG and xml2_config - # normally include _with_ "libxml", so only the header name should be - # used then - needs adjustments in both configure and libcob! - for header in xmlversion uri xmlwriter - do + LIBS="$LIBS $LIBCOB_LIBS $XML2_LIBS" + # note: PKG_CONFIG and xml2-config set -I /path/to/libxml2 which contains a "libxml" folder where + # all the files we look for are included + for header in xmlwriter xmlversion uri parser tree; do AC_CHECK_HEADER([libxml/$header.h], [], - [if test "$with_xml2" = "yes"; then - AC_MSG_ERROR([Headers for libxml2 are required for --with-xml2, you may adjust XML2_CFLAGS]) - else + [if test "$with_xml2" = yes; then + AC_MSG_ERROR([headers for libxml2 are required for --with-xml2, you may adjust XML2_CFLAGS]) + else + AC_MSG_WARN([headers for libxml2 are missing, you may adjust XML2_CFLAGS]) with_xml2=not_found break - fi] + fi] ) done if test "$with_xml2" != "not_found"; then AX_CHECK_DEFINE([libxml/xmlwriter.h], [LIBXML_WRITER_ENABLED], [], - [if test "$with_xml2" = "yes"; then + [if test "$with_xml2" = yes; then AC_MSG_ERROR([libxml2 is required to be configured with xmlWriter]) else AC_MSG_WARN([libxml2 is required to be configured with xmlWriter]) @@ -959,15 +995,17 @@ AS_IF([test "$with_xml2" = "yes" -o "$with_xml2" = "check"], [ ) fi if test "$with_xml2" != "not_found"; then - AC_MSG_CHECKING([if linking against libxml2 with "$XML2_LIBS" works]) + AC_MSG_CHECKING([whether linking against libxml2 with "$XML2_LIBS" works]) AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[xmlNewTextWriterFilename (NULL, 0);]])], [AC_DEFINE([WITH_XML2], [1]) AC_MSG_RESULT([yes]) with_xml2=yes - LIBCOB_CPPFLAGS="$LIBCOB_CPPFLAGS $XML2_CFLAGS" + if test -n "$XML2_CFLAGS"; then + LIBCOB_CPPFLAGS="$LIBCOB_CPPFLAGS $XML2_CFLAGS" + fi LIBCOB_LIBS="$LIBCOB_LIBS $XML2_LIBS"], [AC_MSG_RESULT([no]) - if test "$with_xml2" = "yes"; then + if test "$with_xml2" = yes; then AC_MSG_ERROR([[xml library is required for --with-xml2, you may adjust XML2_LIBS]]) else AC_MSG_WARN([xml library not found, you may adjust XML2_LIBS]) @@ -994,7 +1032,7 @@ AC_ARG_WITH([json], USE_JSON="$with_json" ;; yes) - USE_JSON="check" + USE_JSON=check ;; *) AC_MSG_ERROR([invalid value "$with_json" for --with-json, @@ -1005,17 +1043,17 @@ AC_ARG_WITH([json], no (disable json usage)]) ;; esac], - [USE_JSON="check"]) + [USE_JSON=check]) curr_libs="$LIBS" -AS_IF([test "$USE_JSON" = "cjson" -o "$USE_JSON" = "local" -o "$USE_JSON" = "check"], [ +AS_IF([test "$USE_JSON" = "cjson" -o "$USE_JSON" = "local" -o "$USE_JSON" = check], [ AC_MSG_NOTICE([Checks for local cJSON ...]) curr_libs="$LIBS"; curr_cppflags="$CPPFLAGS" with_cjson_local=no AS_IF([test -e ./libcob/cJSON.c], - [AC_MSG_CHECKING([if linking of ./libcob/cJSON.c works]) + [AC_MSG_CHECKING([whether linking of ./libcob/cJSON.c works]) CPPFLAGS="$curr_cppflags -I./libcob" - LIBS="$LIBS $COMMON_LIBS" + LIBS="$LIBS $LIBCOB_LIBS " AC_LINK_IFELSE([ AC_LANG_PROGRAM([[#include "cJSON.c"]], [[#if (CJSON_VERSION_MAJOR * 100 + CJSON_VERSION_MINOR) < 103 @@ -1029,11 +1067,11 @@ AS_IF([test "$USE_JSON" = "cjson" -o "$USE_JSON" = "local" -o "$USE_JSON" = "che ) LIBS="$curr_libs"] ) - if test "$with_cjson_local" = "no"; then + if test "$with_cjson_local" = no; then AS_IF([test -e "$srcdir/libcob/cJSON.c"], - [AC_MSG_CHECKING([if linking of "$srcdir/libcob/cJSON.c" works]) + [AC_MSG_CHECKING([whether linking of "$srcdir/libcob/cJSON.c" works]) CPPFLAGS="$curr_cppflags -I\"$srcdir/libcob\"" - LIBS="$LIBS $COMMON_LIBS" + LIBS="$LIBS $LIBCOB_LIBS" AC_LINK_IFELSE([ AC_LANG_PROGRAM([[#include "cJSON.c"]], [[#if (CJSON_VERSION_MAJOR * 100 + CJSON_VERSION_MINOR) < 103 @@ -1049,30 +1087,27 @@ AS_IF([test "$USE_JSON" = "cjson" -o "$USE_JSON" = "local" -o "$USE_JSON" = "che ) fi CPPFLAGS="$curr_cppflags" - AS_IF([test "$with_cjson_local" = "no"], [ + AS_IF([test "$with_cjson_local" = no], [ AC_MSG_NOTICE([using local cJSON: no]) if test "$with_json" = "local"; then AC_MSG_ERROR([[cJSON source is required in directory "libcob" for --with-json=local]]) fi PKG_CHECK_MODULES([CJSON], [libcjson], [], [# ]) - if test -n "$CJSON_CFLAGS"; then - CPPFLAGS="$CPPFLAGS $CJSON_CFLAGS" - fi + CPPFLAGS="$CPPFLAGS $CJSON_CFLAGS" if test -z "${CJSON_LIBS+x}"; then CJSON_LIBS="-lcjson" fi - LIBS="$LIBS $CJSON_LIBS" - AC_CHECK_HEADERS([cJSON.h], [], - [AC_CHECK_HEADERS([cjson/cJSON.h], [], + LIBS="$LIBS $LIBCOB_LIBS $CJSON_LIBS" + AC_CHECK_HEADERS([cJSON.h cjson/cJSON.h], [break], [if test "$with_json" = "cjson"; then - AC_MSG_ERROR([Headers for libcjson are required for --with-json=cjson, you may adjust CJSON_CFLAGS]) + AC_MSG_ERROR([header for libcjson is required for --with-json=cjson, you may adjust CJSON_CFLAGS]) else - AC_MSG_WARN([Headers for libcjson missing, you may adjust CJSON_CFLAGS or put cJSON sources in "libcob"]) + AC_MSG_WARN([header for libcjson missing, you may adjust CJSON_CFLAGS or put cJSON sources in "libcob"]) fi] - )]) - AS_IF([test "x$ac_cv_header_cJSON_h" = "xyes" -o "x$ac_cv_header_cjson_cJSON_h" = "xyes"], [ - AC_MSG_CHECKING([if linking against libcjson with "$CJSON_LIBS" works]) + ) + AS_IF([test "x$ac_cv_header_cJSON_h" = xyes -o "x$ac_cv_header_cjson_cJSON_h" = xyes], [ + AC_MSG_CHECKING([whether linking against libcjson with "$CJSON_LIBS" works]) AC_LINK_IFELSE([AC_LANG_PROGRAM([ [#if defined HAVE_CJSON_CJSON_H #include @@ -1086,7 +1121,9 @@ AS_IF([test "$USE_JSON" = "cjson" -o "$USE_JSON" = "local" -o "$USE_JSON" = "che [AC_MSG_RESULT([yes]) AC_DEFINE([WITH_CJSON], [1]) USE_JSON=cjson - LIBCOB_CPPFLAGS="$LIBCOB_CPPFLAGS $CJSON_CFLAGS" + if test -n "$CJSON_CFLAGS"; then + LIBCOB_CPPFLAGS="$LIBCOB_CPPFLAGS $CJSON_CFLAGS" + fi LIBCOB_LIBS="$LIBCOB_LIBS $CJSON_LIBS"], [AC_MSG_RESULT([no]) if test "$with_json" = "cjson"; then @@ -1103,29 +1140,24 @@ AS_IF([test "$USE_JSON" = "cjson" -o "$USE_JSON" = "local" -o "$USE_JSON" = "che LIBS="$curr_libs"; CPPFLAGS="$curr_cppflags" ]) -AS_IF([test "$USE_JSON" = "json-c" -o "$USE_JSON" = "check"], [ +AS_IF([test "$USE_JSON" = "json-c" -o "$USE_JSON" = check], [ CPPFLAGS="$curr_cppflags" PKG_CHECK_MODULES([JSON_C], [json-c], [], [# ]) - # possibly set JSON_C_CFLAGS with $includedir/json-c; - # (has to consider user-setprefix --includir, ... -> left out for now) - if test -n "$JSON_C_CFLAGS"; then - CPPFLAGS="$CPPFLAGS $JSON_C_CFLAGS" - fi + CPPFLAGS="$CPPFLAGS $JSON_C_CFLAGS" if test -z "${JSON_C_LIBS+x}"; then JSON_C_LIBS="-ljson-c" fi - LIBS="$LIBS $JSON_C_LIBS" - AC_CHECK_HEADERS([json.h], [], - [AC_CHECK_HEADERS([json-c/json.h], [], + LIBS="$LIBS $LIBCOB_LIBS $JSON_C_LIBS" + AC_CHECK_HEADERS([json.h json-c/json.h], [break], [if test "$with_json" = "json-c"; then - AC_MSG_ERROR([Headers for libjson-c are required for --with-json=json-c, you may adjust JSON_C_CFLAGS]) + AC_MSG_ERROR([header for libjson-c is required for --with-json=json-c, you may adjust JSON_C_CFLAGS]) else - AC_MSG_WARN([Headers for libjson-c missing, you may adjust JSON_C_CFLAGS]) + AC_MSG_WARN([header for libjson-c missing, you may adjust JSON_C_CFLAGS]) fi] - )]) - AS_IF([test "x$ac_cv_header_json_h" = "xyes" -o "x$ac_cv_header_json_c_json_h" = "xyes"], [ - AC_MSG_CHECKING([if linking against libjson-c with "$JSON_C_LIBS" works]) + ) + AS_IF([test "x$ac_cv_header_json_h" = xyes -o "x$ac_cv_header_json_c_json_h" = xyes], [ + AC_MSG_CHECKING([whether linking against libjson-c with "$JSON_C_LIBS" works]) AC_LINK_IFELSE([AC_LANG_PROGRAM([ [#if defined (HAVE_JSON_C_JSON_H) #include @@ -1139,7 +1171,9 @@ AS_IF([test "$USE_JSON" = "json-c" -o "$USE_JSON" = "check"], [ [AC_MSG_RESULT([yes]) AC_DEFINE([WITH_JSON_C], [1]) USE_JSON=json-c - LIBCOB_CPPFLAGS="$LIBCOB_CPPFLAGS $JSON_C_CFLAGS" + if test -n "$JSON_C_CFLAGS"; then + LIBCOB_CPPFLAGS="$LIBCOB_CPPFLAGS $JSON_C_CFLAGS" + fi LIBCOB_LIBS="$LIBCOB_LIBS $JSON_C_LIBS"], [AC_MSG_RESULT([no]) if test "$USE_JSON" = "json-c"; then @@ -1147,19 +1181,14 @@ AS_IF([test "$USE_JSON" = "json-c" -o "$USE_JSON" = "check"], [ else AC_MSG_WARN([JSON-C not found, you may adjust JSON_C_LIBS]) fi]) - ], - [if test "$USE_JSON" = "json-c"; then - AC_MSG_ERROR([Headers for libjson-c are required for --with-json-c, you may adjust JSON_C_CFLAGS]) - else - AC_MSG_WARN([Headers for libjson-c missing, you may adjust JSON_C_CFLAGS"]) - fi]) + ]) LIBS="$curr_libs"; CPPFLAGS="$curr_cppflags" ]) case "$USE_JSON" in check) if test "$with_json" = yes; then - AC_MSG_ERROR([[No applicable handler for JSON found]]) + AC_MSG_FAILURE([[no applicable handler for JSON found]]) fi USE_JSON="not_found" AC_DEFINE([WITH_JSON], ["not found"]) @@ -1184,7 +1213,7 @@ AC_ARG_WITH([dl], ;; no) ;; - *) AC_MSG_ERROR([[--with/without-dl can not have a value]]) + *) AC_MSG_ERROR([[--with/without-dl can not have an argument]]) ;; esac], [with_dl=yes]) @@ -1193,13 +1222,13 @@ AC_ARG_WITH([varseq], [AS_HELP_STRING([--with-varseq], [Define variable sequential format (default 0)])], [case $with_varseq in - yes) AC_MSG_ERROR([[You must give --with-varseq an argument.]]) + yes) AC_MSG_ERROR([[--with-varseq needs an argument]]) ;; - no) AC_MSG_ERROR([[--without-varseq not supported.]]) + no) AC_MSG_ERROR([[--without-varseq not supported]]) ;; [[0-3]]) ;; - *) AC_MSG_ERROR([[Invalid --with-varseq argument]]) + *) AC_MSG_ERROR([[invalid --with-varseq argument]]) ;; esac], [with_varseq=0]) @@ -1207,17 +1236,20 @@ AC_ARG_WITH([varseq], AC_DEFINE_UNQUOTED([WITH_VARSEQ], [$with_varseq]) +curr_libs="$LIBS" +LIBS="$curr_libs $LIBCOB_LIBS" + # Solaris has nanosleep in other libraries AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[nanosleep (NULL, NULL);]])], [AC_DEFINE([HAVE_NANO_SLEEP], [1])], [AC_CHECK_LIB([rt], [nanosleep], [], [], []) - if test "x$ac_cv_lib_rt_nanosleep" = "xyes"; then + if test "x$ac_cv_lib_rt_nanosleep" = xyes; then AC_DEFINE([HAVE_NANO_SLEEP], [1]) LIBCOB_LIBS="$LIBCOB_LIBS -lrt" else AC_CHECK_LIB([posix4], [nanosleep], [], [], []) - if test "x$ac_cv_lib_posix4_nanosleep" = "xyes"; then + if test "x$ac_cv_lib_posix4_nanosleep" = xyes; then AC_DEFINE([HAVE_NANO_SLEEP], [1]) LIBCOB_LIBS="$LIBCOB_LIBS -lposix4" fi @@ -1282,7 +1314,7 @@ AC_ARG_WITH([curses], USE_CURSES="$with_curses" ;; yes) - USE_CURSES="check" + USE_CURSES=check ;; *) AC_MSG_ERROR([invalid value "$with_curses" for --with-curses, @@ -1292,75 +1324,75 @@ AC_ARG_WITH([curses], no (disable curses usage)]) ;; esac], - [USE_CURSES="check"]) - -curr_libs="$LIBS" # backup current LIBS for later + [USE_CURSES=check]) if test "x$CURSES_LIBS" != x; then LIBS="$CURSES_LIBS $LIBS" - AC_MSG_CHECKING([if linking initscr works with CURSES_LIBS, given as "$CURSES_LIBS"]) + AC_MSG_CHECKING([whether linking initscr works with CURSES_LIBS, given as "$CURSES_LIBS"]) AC_LINK_IFELSE([AC_LANG_PROGRAM([[ extern void *initscr (void);]], [[initscr ();]])], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]) - AC_MSG_ERROR([[Not able to link initscr with CURSES_LIBS]])]) + AC_MSG_FAILURE([[not able to link initscr with CURSES_LIBS]])]) AS_IF([test "$USE_CURSES" = check -o "$USE_CURSES" = no], [ - AC_MSG_ERROR([[explicit selection with --with-curses=ARG necessary, as CURSES_LIBS is set]]) + AC_MSG_ERROR([[explicit selection with --with-curses=ARG needed, as CURSES_LIBS is set]]) ]) - LIBS=$"curr_libs" + LIBS="$curr_libs $LIBCOB_LIBS" fi dnl note: when switching to $ncurses all checks are done correctly but no generation in config.h is done if test "x$CURSES_LIBS" = x; then - if test "$USE_CURSES" = "ncursesw" -o "$USE_CURSES" = "check"; then + if test "$USE_CURSES" = "ncursesw" -o "$USE_CURSES" = check; then AC_CHECK_LIB([ncursesw], [initscr], [true], [AS_IF([test "$USE_CURSES" != check], [USE_CURSES="missing_lib"])]) fi fi if test "$USE_CURSES" = "ncursesw" -o "x$ac_cv_lib_ncursesw_initscr" = xyes; then - AC_CHECK_HEADERS([ncursesw/ncurses.h], [USE_CURSES="ncursesw"], - [AC_CHECK_HEADERS([ncursesw/curses.h], [USE_CURSES="ncursesw"], - dnl note: at least OpenBSD has ncursesw only with only ncurses.h in default header directory - [AC_CHECK_HEADERS([ncurses.h], [USE_CURSES="ncursesw"], - [AS_IF([test "$USE_CURSES" != check], - [USE_CURSES="missing_header"]) ]) ]) ]) + dnl note: at least OpenBSD has ncursesw only with only ncurses.h in default header directory + AC_CHECK_HEADERS([ncursesw/ncurses.h ncursesw/curses.h ncurses.h], + [USE_CURSES="ncursesw" + break], + [AS_IF([test "$USE_CURSES" != check], + [USE_CURSES="missing_header"]) ]) AS_IF([test $USE_CURSES="ncursesw" -a "x$CURSES_LIBS" = x], [CURSES_LIBS="-l$USE_CURSES"]) fi if test "x$CURSES_LIBS" = x; then - if test "$USE_CURSES" = "ncurses" -o "$USE_CURSES" = "check"; then + if test "$USE_CURSES" = "ncurses" -o "$USE_CURSES" = check; then AC_CHECK_LIB([ncurses], [initscr], [true], [AS_IF([test "$USE_CURSES" != check], [USE_CURSES="missing_lib"])]) fi fi if test "$USE_CURSES" = "ncurses" -o "x$ac_cv_lib_ncurses_initscr" = xyes; then - AC_CHECK_HEADERS([ncurses/ncurses.h], [USE_CURSES="ncurses"], - [AC_CHECK_HEADERS([ncurses/curses.h], [USE_CURSES="ncurses"], - [AC_CHECK_HEADERS([ncurses.h], [USE_CURSES="ncurses"], - [AS_IF([test "$USE_CURSES" != check], - [USE_CURSES="missing_header"]) ]) ]) ]) + AC_CHECK_HEADERS([ncurses/ncurses.h ncurses/curses.h ncurses.h], + [USE_CURSES="ncurses" + break], + [AS_IF([test "$USE_CURSES" != check], + [USE_CURSES="missing_header"]) ]) AS_IF([test $USE_CURSES="ncurses" -a "x$CURSES_LIBS" = x], [CURSES_LIBS="-l$USE_CURSES"]) fi if test "x$CURSES_LIBS" = x; then - if test "$USE_CURSES" = "pdcurses" -o "$USE_CURSES" = "check"; then + if test "$USE_CURSES" = "pdcurses" -o "$USE_CURSES" = check; then AC_CHECK_LIB([pdcurses], [initscr], [true], [AS_IF([test "$USE_CURSES" != check], [USE_CURSES="missing_lib"])]) fi fi if test "$USE_CURSES" = "pdcurses" -o "x$ac_cv_lib_pdcurses_initscr" = xyes; then - AC_CHECK_HEADERS([pdcurses.h], [USE_CURSES="pdcurses"], - [AC_CHECK_HEADERS([curses.h], [USE_CURSES="pdcurses"], - [AS_IF([test "$USE_CURSES" != check], [USE_CURSES="missing_header"]) ]) ]) + AC_CHECK_HEADERS([pdcurses.h curses.h], + [USE_CURSES="pdcurses" + break], + [AS_IF([test "$USE_CURSES" != check], + [USE_CURSES="missing_header"]) ]) AS_IF([test $USE_CURSES="pdcurses" -a "x$CURSES_LIBS" = x], [CURSES_LIBS="-l$USE_CURSES"]) fi if test "x$CURSES_LIBS" = x; then - if test "$USE_CURSES" = "xcurses" -o "$USE_CURSES" = "check"; then + if test "$USE_CURSES" = "xcurses" -o "$USE_CURSES" = check; then # consider using xcurses-config # note: the library name is actually with an upper-case XC: AC_CHECK_LIB([XCurses], [initscr], [true], @@ -1368,16 +1400,18 @@ if test "x$CURSES_LIBS" = x; then fi fi if test "$USE_CURSES" = "xcurses" -o "x$ac_cv_lib_XCurses_initscr" = xyes; then - AC_CHECK_HEADERS([xcurses.h], [USE_CURSES="xcurses"], - [AC_CHECK_HEADERS([xcurses/curses.h], [USE_CURSES="xcurses"], - [AS_IF([test "$USE_CURSES" != check], [USE_CURSES="missing_header"]) ]) ]) + AC_CHECK_HEADERS([xcurses/curses.h xcurses.h], + [USE_CURSES="xcurses" + break], + [AS_IF([test "$USE_CURSES" != check], + [USE_CURSES="missing_header"]) ]) AS_IF([test $USE_CURSES="xcurses" -a "x$CURSES_LIBS" = x], # note: the library name is actually with an upper-case XC: [CURSES_LIBS="-lXCurses"]) fi if test "x$CURSES_LIBS" = x; then - if test "$USE_CURSES" = "curses" -o "$USE_CURSES" = "check"; then + if test "$USE_CURSES" = "curses" -o "$USE_CURSES" = check; then AC_CHECK_LIB([curses], [initscr], [true], [AS_IF([test "$USE_CURSES" != check], [USE_CURSES="missing_lib"])]) fi @@ -1398,10 +1432,10 @@ case "$USE_CURSES" in AC_DEFINE([WITH_CURSES], ["disabled"]) ;; missing_lib) - AC_MSG_ERROR([[Not able to link configured library $with_curses]]) + AC_MSG_FAILURE([[not able to link configured library $with_curses]]) ;; missing_header) - AC_MSG_ERROR([[No header found for configured library $with_curses]]) + AC_MSG_ERROR([[no header found for configured library $with_curses]]) ;; *curses*) AC_DEFINE_UNQUOTED([WITH_CURSES], ["$USE_CURSES"]) @@ -1427,7 +1461,7 @@ if test "$USE_CURSES" = "ncurses" -o "$USE_CURSES" = "ncursesw"; then []) fi -if test "$USE_CURSES" != "no" -a "$USE_CURSES" != "not_found"; then +if test "$USE_CURSES" != no -a "$USE_CURSES" != "not_found"; then AC_MSG_CHECKING([for curses color_set function]) AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #ifdef HAVE_NCURSESW_NCURSES_H @@ -1512,7 +1546,7 @@ if test "$USE_CURSES" != "no" -a "$USE_CURSES" != "not_found"; then [AC_MSG_RESULT([no])], []) fi -LIBS="$curr_libs" # clean for next checks +LIBS="$curr_libs $LIBCOB_LIBS" # ## Checks for indexed handlers @@ -1561,19 +1595,19 @@ AC_ARG_WITH([db], [with_db=check]) reset_isam_check() { - if test "$with_visam" = "check"; then + if test "$with_visam" = check; then with_visam=no fi - if test "$with_vbisam" = "check"; then + if test "$with_vbisam" = check; then with_vbisam=no fi - if test "$with_disam" = "check"; then + if test "$with_disam" = check; then with_disam=no fi - if test "$with_cisam" = "check"; then + if test "$with_cisam" = check; then with_cisam=no fi - if test "$with_db" = "check"; then + if test "$with_db" = check; then with_db=no fi } @@ -1597,18 +1631,18 @@ AC_ARG_WITH([indexed], esac ]) -if test "$cob_has_isam" = "yes"; then +if test "$cob_has_isam" = yes; then # Some INDEXED handler was selected so do not check for others reset_isam_check fi -AS_IF([test "$with_visam" = "yes" -o "$with_visam" = "check"], [ +AS_IF([test "$with_visam" = yes -o "$with_visam" = check], [ PKG_CHECK_MODULES([VISAM], [visam], [], [#]) if test -n "$VISAM_CFLAGS"; then CPPFLAGS="$CPPFLAGS $VISAM_CFLAGS" fi AC_CHECK_HEADERS([visam.h], [], - [if test "$with_visam" = "yes"; then + [if test "$with_visam" = yes; then AC_MSG_ERROR([visam.h is required for V-ISAM]) else with_visam=not_found @@ -1624,7 +1658,7 @@ AS_IF([test "$with_visam" = "yes" -o "$with_visam" = "check"], [ with_visam=yes reset_isam_check ], [], [$VISAM_LIBS]) - if test "$ac_cv_search_isopen" = "no"; then + if test "$ac_cv_search_isopen" = no; then AC_MSG_ERROR([VISAM library not found]) elif test "$ac_cv_search_isopen" != "none required"; then AC_MSG_NOTICE([VISAM library found as $ac_cv_search_isopen]) @@ -1641,13 +1675,13 @@ AS_IF([test "$with_visam" = "yes" -o "$with_visam" = "check"], [ ], [VISAM_LIBS=""]) -AS_IF([test "$with_vbisam" = "yes" -o "$with_vbisam" = "check"], [ +AS_IF([test "$with_vbisam" = yes -o "$with_vbisam" = check], [ PKG_CHECK_MODULES([VBISAM], [vbisam], [], [#]) if test -n "$VBISAM_CFLAGS"; then CPPFLAGS="$CPPFLAGS $VBISAM_CFLAGS" fi AC_CHECK_HEADERS([vbisam.h], [], - [if test "$with_vbisam" = "yes"; then + [if test "$with_vbisam" = yes; then AC_MSG_ERROR([vbisam.h is required for VBISAM]) else with_vbisam=not_found @@ -1665,7 +1699,7 @@ AS_IF([test "$with_vbisam" = "yes" -o "$with_vbisam" = "check"], [ with_vbisam=yes reset_isam_check ], [], [$VBISAM_LIBS]) - if test "$ac_cv_search_isopen" = "no"; then + if test "$ac_cv_search_isopen" = no; then AC_MSG_ERROR([libvbisam >= 2.0 is required for VBISAM]) elif test "$ac_cv_search_isopen" != "none required"; then AC_MSG_NOTICE([VBISAM library found as $ac_cv_search_isfullclose]) @@ -1681,7 +1715,7 @@ AS_IF([test "$with_vbisam" = "yes" -o "$with_vbisam" = "check"], [ fi ], [VBISAM_LIBS=""]) -AS_IF([test "$with_disam" = "yes" -o "$with_disam" = "check"], [ +AS_IF([test "$with_disam" = yes -o "$with_disam" = check], [ PKG_CHECK_MODULES([DISAM], [disam], [], [#]) if test -n "$DISAM_CFLAGS"; then CPPFLAGS="$CPPFLAGS $DISAM_CFLAGS" @@ -1693,8 +1727,8 @@ AS_IF([test "$with_disam" = "yes" -o "$with_disam" = "check"], [ with_disam=yes reset_isam_check ], [], [$DISAM_LIBS]) - if test "$ac_cv_search_isopen" = "no"; then - if test "$with_disam" != "check"; then + if test "$ac_cv_search_isopen" = no; then + if test "$with_disam" != check; then AC_MSG_ERROR([DISAM library not found]) fi elif test "$ac_cv_search_isopen" != "none required"; then @@ -1712,7 +1746,7 @@ AS_IF([test "$with_disam" = "yes" -o "$with_disam" = "check"], [ if test "$ac_cv_search_isopen" = "disam"; then AC_CHECK_HEADERS([disam.h], [], AC_MSG_ERROR([disam.h is required for DISAM])) - elif test "$ac_cv_search_isopen" != "no"; then + elif test "$ac_cv_search_isopen" != no; then AC_CHECK_HEADERS([iswrap.h isconfig.h isintstd.h], [], AC_MSG_ERROR([iswrap.h isconfig.h isintstd.h are required for $ac_cv_search_isopen])) fi @@ -1722,13 +1756,13 @@ AS_IF([test "$with_disam" = "yes" -o "$with_disam" = "check"], [ ], [DISAM_LIBS=""]) -AS_IF([test "$with_cisam" = "yes" -o "$with_cisam" = "check"], [ +AS_IF([test "$with_cisam" = yes -o "$with_cisam" = check], [ PKG_CHECK_MODULES([CISAM], [cisam], [], [#]) if test -n "$CISAM_CFLAGS"; then CPPFLAGS="$CPPFLAGS $CISAM_CFLAGS" fi AC_CHECK_HEADERS([isam.h], [], - [if test "$with_cisam" = "yes"; then + [if test "$with_cisam" = yes; then AC_MSG_ERROR([isam.h is required for C-ISAM]) else with_cisam=not_found @@ -1752,7 +1786,7 @@ AS_IF([test "$with_cisam" = "yes" -o "$with_cisam" = "check"], [ AC_ARG_WITH([odbc], [AS_HELP_STRING([--with-odbc], [Optionally use ODBC for INDEXED/RELATIVE I/O])], -[ if test "$with_odbc" = "yes"; then +[ if test "$with_odbc" = yes; then PKG_CHECK_MODULES([ODBC], [odbc], [], [#]) if test -n "$ODBC_CFLAGS"; then CPPFLAGS="$CPPFLAGS $ODBC_CFLAGS" @@ -1782,7 +1816,7 @@ AC_ARG_VAR([OCI_LIBS], [linker flags for Oracle OCI, overriding automatic lookup AC_ARG_WITH([oci], [AS_HELP_STRING([--with-oci], [Optionally use Oracle OCI for INDEXED/RELATIVE I/O])], -[ if test "$with_oci" = "yes"; then +[ if test "$with_oci" = yes; then if test -n "$OCI_CFLAGS"; then CPPFLAGS="$CPPFLAGS $OCI_CFLAGS" elif test -n "$ORACLE_HOME"; then @@ -1810,7 +1844,7 @@ AC_ARG_WITH([oci], # Checks for db. AC_ARG_VAR([BDB_CFLAGS], [compiler flags necessary to preprocess/compile for Berkeley DB]) AC_ARG_VAR([BDB_LIBS], [linker flags for Berkeley DB, overriding automatic lookup]) -if test "$with_db" = "yes" -o "$with_db" = "check"; then +if test "$with_db" = yes -o "$with_db" = check; then AC_MSG_NOTICE([Checks for Berkeley DB ...]) curr_cppflags="$CPPFLAGS" @@ -1837,7 +1871,7 @@ if test "$with_db" = "yes" -o "$with_db" = "check"; then ]])], [COB_BDB_HEADER=$(./conftest$ac_exeext x)] [COB_BDB_HEADER_STR=$(./conftest$ac_exeext x y)], - [AC_MSG_ERROR([Unable to extract Berkeley DB version information from db.h])], + [AC_MSG_ERROR([unable to extract Berkeley DB version information from db.h])], [AC_MSG_WARN([cannot run test program while cross-compiling]) COB_BDB_HEADER="cross" COB_BDB_HEADER_STR="cross"]) @@ -1906,7 +1940,7 @@ if test "$with_db" = "yes" -o "$with_db" = "check"; then fi LIBS="$test_libs" unset test_libs - if test "$cob_gen_bdb" = "yes"; then + if test "$cob_gen_bdb" = yes; then AC_MSG_RESULT([yes]) if test "x$cobdb" = x; then AC_MSG_NOTICE([BDB library version $COB_BDB_HEADER linked with $BDB_LIBS]) @@ -1914,7 +1948,7 @@ if test "$with_db" = "yes" -o "$with_db" = "check"; then AC_MSG_NOTICE([BDB library version $COB_BDB_HEADER found as -l$cobdb]) fi with_db=yes - elif test "$with_db" = "check"; then + elif test "$with_db" = check; then AC_MSG_RESULT([no]) with_db=no else @@ -1944,12 +1978,12 @@ AC_ARG_VAR([LMDB_LIBS], [linker flags for LMDB, overriding automatic lookup]) AC_ARG_WITH([lmdb], [AS_HELP_STRING([--with-lmdb], [Use Lightning Memory-Mapped Database (LMDB) for INDEXED I/O (experimental, no locking or shared storage, write is extremely slow)])], -[ if test "$with_lmdb" = "yes"; then +[ if test "$with_lmdb" = yes; then AC_DEFINE([WITH_LMDB], [1]) fi ], []) -if test "$with_lmdb" = "yes"; then +if test "$with_lmdb" = yes; then AC_MSG_NOTICE([Checks for Lightning Memory-Mapped Database (LMDB) ...]) AC_CHECK_HEADER([lmdb.h], [], AC_MSG_ERROR([LMDB lmdb.h is missing]),[]) @@ -2008,7 +2042,7 @@ fi AC_ARG_WITH([index-extfh], [AS_HELP_STRING([--with-index-extfh], [Use external INDEXED handler (obsolete)])], -[ if test "$with_index_extfh" = "yes"; then +[ if test "$with_index_extfh" = yes; then AC_DEFINE([WITH_INDEX_EXTFH], [1]) fi ], []) @@ -2016,35 +2050,35 @@ AC_ARG_WITH([index-extfh], AC_ARG_WITH([seqra-extfh], [AS_HELP_STRING([--with-seqra-extfh], [Use external SEQ/RAN handler (obsolete)])], - [ if test "$with_seqra_extfh" = "yes"; then + [ if test "$with_seqra_extfh" = yes; then AC_DEFINE([WITH_SEQRA_EXTFH], [1]) fi ], []) # Checks for dl/ltdl. -DEFINE_DL="no" +DEFINE_DL=no AC_MSG_CHECKING([for _WIN32]) AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ #ifndef _WIN32 # error macro not defined #endif]])], - [DEFINE_DL="yes" + [DEFINE_DL=yes AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) -if test "$DEFINE_DL" = "no" -a "$with_dl" = "yes"; then - if test "x$ac_cv_header_dlfcn_h" = "xyes"; then - AC_CHECK_LIB([c], [dlopen], [DEFINE_DL="yes"], [], []) - if test "$DEFINE_DL" = "no"; then - AC_CHECK_LIB([dl], [dlopen], [DEFINE_DL="yes"], [], []) - if test "$DEFINE_DL" = "yes"; then +if test "$DEFINE_DL" = no -a "$with_dl" = yes; then + if test "x$ac_cv_header_dlfcn_h" = xyes; then + AC_CHECK_LIB([c], [dlopen], [DEFINE_DL=yes], [], []) + if test "$DEFINE_DL" = no; then + AC_CHECK_LIB([dl], [dlopen], [DEFINE_DL=yes], [], []) + if test "$DEFINE_DL" = yes; then AC_DEFINE([USE_LIBDL], [1]) LIBCOB_LIBS="$LIBCOB_LIBS -ldl" # AC_CHECK_LIB([dl], [dladdr], [AC_DEFINE([HAVE_DLADDR], [1])], [], []) else - AC_CHECK_LIB([dld], [dlopen], [DEFINE_DL="yes"], [], []) - if test "$DEFINE_DL" = "yes"; then + AC_CHECK_LIB([dld], [dlopen], [DEFINE_DL=yes], [], []) + if test "$DEFINE_DL" = yes; then AC_DEFINE([USE_LIBDL], [1]) LIBCOB_LIBS="$LIBCOB_LIBS -ldld" # AC_CHECK_LIB([dld], [dladdr], [AC_DEFINE([HAVE_DLADDR], [1])], [], []) @@ -2057,7 +2091,7 @@ if test "$DEFINE_DL" = "no" -a "$with_dl" = "yes"; then fi fi -if test "$DEFINE_DL" = "no"; then +if test "$DEFINE_DL" = no; then AC_CHECK_HEADERS([ltdl.h], [], AC_MSG_ERROR([ltdl.h is required]), []) AC_CHECK_LIB([ltdl], [lt_dlopen], [LIBCOB_LIBS="$LIBCOB_LIBS -lltdl"], @@ -2065,6 +2099,8 @@ if test "$DEFINE_DL" = "no"; then fi # Checks for compiling computed gotos +curr_cflags="$CFLAGS" +CFLAGS="$CFLAGS $ERRWARN" AC_MSG_CHECKING([for support of computed gotos]) AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ int test () @@ -2090,30 +2126,30 @@ AC_CHECK_SIZEOF(long long) AC_CHECK_SIZEOF(long) AC_CHECK_SIZEOF(void *) -AC_MSG_CHECKING([if size of long int = size of long long]) +AC_MSG_CHECKING([whether size of long int = size of long long]) AS_IF([test "$ac_cv_sizeof_long_int" = "$ac_cv_sizeof_long_long"], [AC_DEFINE([COB_LI_IS_LL], [1]) AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) -AC_MSG_CHECKING([if long is 32 bits]) +AC_MSG_CHECKING([whether long is 32 bits]) AS_IF([test "$ac_cv_sizeof_long" = 4], [AC_DEFINE([COB_32_BIT_LONG], [1]) AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) -AC_MSG_CHECKING([if pointer is longer than 32 bits]) +AC_MSG_CHECKING([whether pointer is longer than 32 bits]) AS_IF([test "$ac_cv_sizeof_void_p" -gt 4], - [COB_HAS_64_BIT_POINTER="yes" + [COB_HAS_64_BIT_POINTER=yes AC_DEFINE([COB_64_BIT_POINTER], [1]) AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) dnl We likely don't need this and remove it before 4.0 final release dnl # Check gcc wrapv option -dnl if test "$COB_USES_GCC_NO_ICC" = "yes"; then +dnl if test "$COB_USES_GCC_NO_ICC" = yes; then dnl curr_cflags="$CFLAGS" dnl CFLAGS="$CFLAGS -fwrapv" dnl AC_MSG_CHECKING([for gcc -fwrapv option]) -dnl AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[int testint;]])], +dnl AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[return 0;]])], dnl [AC_DEFINE([HAVE_FWRAPV_OPT], [1]) AC_MSG_RESULT([yes])], dnl [AC_MSG_RESULT([no])]) dnl [], @@ -2125,16 +2161,17 @@ dnl fi # done: does not raise an error # *TODO*: has same output as omitting it -AC_CACHE_CHECK([for aligned attribute], gc_cv_attribute_alligned, [ +AC_CACHE_CHECK([for aligned attribute], gc_cv_attribute_aligned, [ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], - [[char testchar[4] __attribute__((aligned));]])], - [gc_cv_attribute_alligned=yes], - [gc_cv_attribute_alligned=no] + [[char testchar[4] __attribute__((aligned)); + (void)testchar;]])], + [gc_cv_attribute_aligned=yes], + [gc_cv_attribute_aligned=no] ]) ) - if test "$gc_cv_attribute_alligned" = yes; then +if test "$gc_cv_attribute_aligned" = yes; then AC_DEFINE([HAVE_ATTRIBUTE_ALIGNED], [1]) - fi +fi AC_CACHE_CHECK([for pure attribute], gc_cv_attribute_pure, [ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ @@ -2145,9 +2182,23 @@ AC_CACHE_CHECK([for pure attribute], gc_cv_attribute_pure, [ [gc_cv_attribute_pure=no] ]) ) - if test "$gc_cv_attribute_pure" = yes; then +if test "$gc_cv_attribute_pure" = yes; then AC_DEFINE([HAVE_ATTRIBUTE_PURE], [1]) - fi +fi + +AC_CACHE_CHECK([for constructor attribute], gc_cv_attribute_constructor, [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ + __attribute__((constructor)) void f (void) { return; } + ]], + [[]])], + [gc_cv_attribute_constructor=yes], + [gc_cv_attribute_constructor=no] + ]) +) +if test "$gc_cv_attribute_constructor" = yes; then + AC_DEFINE([HAVE_ATTRIBUTE_CONSTRUCTOR], [1]) +fi +CFLAGS="$curr_cflags" dnl Simon: removed, use --disable-nls instead dnl # Disable for Cygwin @@ -2202,12 +2253,12 @@ COB_EXPORT_DYN="$(eval echo $export_dynamic_flag_spec)" # FIXME: lt_prog_compiler_pic is not always correct, for example with occ COB_PIC_FLAGS=$(echo "$lt_prog_compiler_pic" | $SED -e 's/^ //') -if test "$enable_cflags_setting" = "yes"; then - if test "$enable_hardening" != "yes"; then +if test "$enable_cflags_setting" = yes; then + if test "$enable_hardening" != yes; then # Remove -O2 option added by AC_PROG_CC and add -O0 - if test "$enable_debug" = "yes" -o "$enable_code_coverage" = "yes"; then + if test "$enable_debug" = yes -o "$enable_code_coverage" = yes; then CFLAGS=$(echo "$CFLAGS" | $SED -e 's/ *-O@<:@0-9a-zA-Z@:>@* */ /g' -e 's/ $//' -e 's/^ //') - if test "$COB_USES_GCC" = "yes"; then + if test "$COB_USES_GCC" = yes; then CFLAGS="$CFLAGS -O0" fi fi @@ -2217,7 +2268,7 @@ fi unset enable_cflags_setting # Note: cobc.c assumed -g for all but _MSC_VER -if test "$ac_cv_prog_cc_g" = "yes"; then +if test "$ac_cv_prog_cc_g" = yes; then COB_DEBUG_FLAGS="-g" else COB_DEBUG_FLAGS="" @@ -2226,18 +2277,18 @@ fi # For debugging: add most expressive debug level if using GCC (compatible) curr_cflags="$CFLAGS" -AS_IF([test "$COB_USES_GCC" = "yes"], [ +AS_IF([test "$COB_USES_GCC" = yes], [ cob_temp_flags="-ggdb3" - CFLAGS="$curr_cflags $cob_temp_flags" + CFLAGS="$curr_cflags $cob_temp_flags $ERRWARN" AC_MSG_CHECKING([for debug option $cob_temp_flags]) - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[int testint;]])], + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[return 0;]])], [AC_MSG_RESULT([yes]) COB_DEBUG_FLAGS="$cob_temp_flags"], [AC_MSG_RESULT([no]) cob_temp_flags="-g3" - CFLAGS="$curr_cflags $cob_temp_flags" + CFLAGS="$curr_cflags $cob_temp_flags $ERRWARN" AC_MSG_CHECKING([for debug option $cob_temp_flags]) - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[int testint;]])], + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[return 0;]])], [AC_MSG_RESULT([yes]) COB_DEBUG_FLAGS="$cob_temp_flags"], [AC_MSG_RESULT([no])]) @@ -2245,16 +2296,16 @@ AS_IF([test "$COB_USES_GCC" = "yes"], [ ) cob_temp_flags="-fasynchronous-unwind-tables" - CFLAGS="$curr_cflags $cob_temp_flags" + CFLAGS="$curr_cflags $cob_temp_flags $ERRWARN" AC_MSG_CHECKING([for debug option $cob_temp_flags]) - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[int testint;]])], + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[return 0;]])], [AC_MSG_RESULT([yes]) COB_DEBUG_FLAGS="$COB_DEBUG_FLAGS $cob_temp_flags"], [AC_MSG_RESULT([no]) cob_temp_flags="-funwind-tables" - CFLAGS="$curr_cflags $cob_temp_flags" + CFLAGS="$curr_cflags $cob_temp_flags $ERRWARN" AC_MSG_CHECKING([for debug option $cob_temp_flags]) - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[int testint;]])], + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[return 0;]])], [AC_MSG_RESULT([yes]) COB_DEBUG_FLAGS="$COB_DEBUG_FLAGS $cob_temp_flags"], [AC_MSG_RESULT([no])]) @@ -2262,7 +2313,7 @@ AS_IF([test "$COB_USES_GCC" = "yes"], [ ) ]) -if test "$enable_debug" = "yes"; then +if test "$enable_debug" = yes; then if test "x$curr_cflags" != "x"; then CFLAGS="$curr_cflags $COB_DEBUG_FLAGS" else @@ -2272,25 +2323,25 @@ else CFLAGS="$curr_cflags" fi -AS_IF([test "$enable_hardening" = "yes"], [ +AS_IF([test "$enable_hardening" = yes], [ AC_MSG_NOTICE([Compile with hardening options]) # needs optimization - #if test "$enable_debug" = "yes"; then + #if test "$enable_debug" = yes; then # CFLAGS="$CFLAGS -O" #fi CPPFLAGS="$CPPFLAGS -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2" curr_cflags="$CFLAGS" cob_temp_flags="-fstack-protector-strong" - CFLAGS="$curr_cflags $cob_temp_flags" + CFLAGS="$curr_cflags $cob_temp_flags $ERRWARN" AC_MSG_CHECKING([for $cob_temp_flags option]) - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[int testint;]])], + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[return 0;]])], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]) cob_temp_flags="-fstack-protector" - CFLAGS="$curr_cflags $cob_temp_flags" + CFLAGS="$curr_cflags $cob_temp_flags $ERRWARN" AC_MSG_CHECKING([for $cob_temp_flags option]) - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[int testint;]])], + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[return 0;]])], [AC_MSG_RESULT([yes])], [CFLAGS="$curr_cflags"; cob_temp_flags=""; AC_MSG_RESULT([no])]) ]) @@ -2300,23 +2351,26 @@ AS_IF([test "$enable_hardening" = "yes"], [ else COB_LDFLAGS="$cob_temp_flags" fi + CFLAGS="$curr_cflags $cob_temp_flags" + else + CFLAGS="$curr_cflags" fi unset cob_temp_flags ]) -AS_IF([test "$COB_USES_GCC" = "yes"], [ +AS_IF([test "$COB_USES_GCC" = yes], [ curr_cflags="$CFLAGS" AC_CACHE_CHECK([for -pipe option], gc_cv_gcc_pipe, [ - CFLAGS="$CFLAGS -pipe" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[int testint;]])], + CFLAGS="$CFLAGS -pipe $ERRWARN" + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[return 0;]])], [gc_cv_gcc_pipe=yes], [gc_cv_gcc_pipe=no]) ]) - if test "$gc_cv_gcc_pipe" = yes; then + if test "$gc_cv_gcc_pipe" = yes; then CFLAGS="$curr_cflags -pipe" - else + else CFLAGS="$curr_cflags" - fi + fi ]) # include directory (install dir) @@ -2342,13 +2396,13 @@ COB_CFLAGS="-I\"${includedir_resolved}\"" # compiler specific general options for COB_CFLAGS, originating from cobc.c (main) -if test "$COB_USES_ICC_ONLY" = "yes"; then +if test "$COB_USES_ICC_ONLY" = yes; then # these are deprecated... COB_CFLAGS="$COB_CFLAGS -vec-report0 -opt-report 0" -elif test "$COB_USES_WATCOMC_ONLY" = "yes"; then +elif test "$COB_USES_WATCOMC_ONLY" = yes; then # -s = no overflow checks, otherwise need to code/link a CHK routine COB_CFLAGS="$COB_CFLAGS -s -wcd=118" -elif test "$COB_USES_XLC_ONLY" = "yes"; then +elif test "$COB_USES_XLC_ONLY" = yes; then # use read-only memory for string literals and constants COB_CFLAGS="$COB_CFLAGS -qro -qroconst" # allow nonstandard usage - CHECKME where do we need this ??? @@ -2358,7 +2412,7 @@ elif test "$COB_USES_XLC_ONLY" = "yes"; then COB_CFLAGS="$COB_CFLAGS -qsuppress=1500-030" fi -if test "$COB_USES_GCC_NO_ICC" = "yes"; then +if test "$COB_USES_GCC_NO_ICC" = yes; then # comment from cobc.c: --param max-goto-duplication-insns=100000 # /* RXWRXW - gcse */ # COB_CFLAGS="$COB_CFLAGS -Wno-unused -fsigned-char -fno-gcse" @@ -2366,21 +2420,30 @@ if test "$COB_USES_GCC_NO_ICC" = "yes"; then fi # Check gcc 4 pointer sign option (at least available with "recent" clang, too) -#if test "$COB_USES_GCC_NO_ICC" = "yes"; then -if test "$COB_USES_XLC_ONLY" != "yes"; then +#if test "$COB_USES_GCC_NO_ICC" = yes; then +if test "$COB_USES_XLC_ONLY" != yes; then curr_cflags="$CFLAGS" - CFLAGS="$CFLAGS -Wno-pointer-sign" + CFLAGS="$CFLAGS -Wpointer-sign $ERRWARN" AC_MSG_CHECKING([for gcc pointer sign option]) - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[int testint;]])], + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[return 0;]])], [COB_CFLAGS="$COB_CFLAGS -Wno-pointer-sign"; AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) CFLAGS="$curr_cflags" fi #fi -if test "$COB_USES_CLANG_ONLY" = "yes"; then +if test "$COB_USES_CLANG_ONLY" = yes; then # don't warn if cobc uses arguments which aren't picked up (likely because of the translation phase) COB_CFLAGS="$COB_CFLAGS -Qunused-arguments" + + # don't warn for untyped function call - only possible if the interal repository would be enforced + curr_cflags="$CFLAGS" + CFLAGS="$CFLAGS -Wdeprecated-non-prototype $ERRWARN" + AC_MSG_CHECKING([for need to suppress clang prototype warning]) + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[return 0;]])], + [COB_CFLAGS="$COB_CFLAGS -Wno-deprecated-non-prototype"; AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no])]) + CFLAGS="$curr_cflags" fi @@ -2415,7 +2478,7 @@ cob_temp_flags=$(echo x$cob_temp_flags | \ if test "x$cob_temp_flags" != x; then COB_CFLAGS="$cob_temp_flags $COB_CFLAGS" fi -if test "$enable_hardening" = "yes"; then +if test "$enable_hardening" = yes; then # needs optimization COB_CFLAGS="$COB_CFLAGS -O" fi @@ -2438,19 +2501,19 @@ COB_FIX_LIB="$COB_EXPORT_DYN" COB_FIX_LIBTOOL="" case $host_os in mingw* | cygwin*) - if test "$COB_USES_GCC" = "yes"; then + if test "$COB_USES_GCC" = yes; then COB_EXPORT_DYN="-Wl,--export-all-symbols -Wl,--enable-auto-import -Wl,--enable-auto-image-base" COB_FIX_LIBTOOL="-Wl,--enable-auto-import" fi #COB_FIX_LIB="" ;; - darwin* | rhapsody*) - if test "$COB_USES_GCC" = "yes"; then + rhapsody*) + if test "$COB_USES_GCC" = yes; then COB_SHARED_OPT="-bundle -flat_namespace -undefined suppress" fi ;; hpux*) - if test "$COB_USES_GCC" != "yes"; then + if test "$COB_USES_GCC" != yes; then COB_SHARED_OPT="-b" AC_DEFINE([_XOPEN_SOURCE_EXTENDED], [1]) rm -f hptest* @@ -2464,7 +2527,7 @@ case $host_os in COB_CFLAGS="$COB_CFLAGS +Olit=all -w" fi - if test "$enable_debug" = "yes"; then + if test "$enable_debug" = yes; then CFLAGS="$CFLAGS +O0" else CFLAGS="$CFLAGS +O2" @@ -2475,9 +2538,9 @@ case $host_os in ;; aix*) COB_EXPORT_DYN="-Wl,-bexpfull -Wl,-brtl" - if test "$COB_USES_GCC" != "yes"; then + if test "$COB_USES_GCC" != yes; then CFLAGS="$CFLAGS -Q -qro -qroconst" - if test "$enable_debug" = "yes"; then + if test "$enable_debug" = yes; then CFLAGS="$CFLAGS -qnoopt" else CFLAGS="$CFLAGS -O2" @@ -2492,9 +2555,9 @@ case $host_os in fi ;; solaris*) - if test "$COB_USES_GCC" != "yes"; then + if test "$COB_USES_GCC" != yes; then CFLAGS="$CFLAGS -xstrconst" - if test "$enable_debug" != "yes"; then + if test "$enable_debug" != yes; then CFLAGS="$CFLAGS -xO2" fi COB_CFLAGS="$COB_CFLAGS -xstrconst" @@ -2503,49 +2566,49 @@ case $host_os in ;; esac -if test "$COB_USES_ICC_ONLY" = "yes"; then - if test "$enable_debug" != "yes"; then +if test "$COB_USES_ICC_ONLY" = yes; then + if test "$enable_debug" != yes; then CFLAGS="$CFLAGS -finline-functions" fi CFLAGS="$CFLAGS -Wall -wd1419 -vec-report0 -opt-report 0" -elif test "$COB_USES_GCC" = "yes" && test "$with_gnu_ld" = "yes"; then +elif test "$COB_USES_GCC" = yes && test "$with_gnu_ld" = yes; then curr_ldflags="$LDFLAGS" LDFLAGS="$LDFLAGS -Wl,-z,relro,-z,now,-O1" AC_MSG_CHECKING([for ld bind now option]) - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[int testint;]])], + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[return 0;]])], [AC_MSG_RESULT([yes])], [LDFLAGS=$curr_ldflags AC_MSG_RESULT([no])]) unset curr_ldflags - if test "$enable_debug" != "yes"; then + if test "$enable_debug" != yes; then CFLAGS="$CFLAGS -finline-functions" fi CFLAGS="$CFLAGS -fsigned-char -Wall -Wwrite-strings -Wmissing-prototypes -Wno-format-y2k" fi -if test "x$lt_cv_dlopen_self" != "xyes"; then +if test "x$lt_cv_dlopen_self" != xyes; then AC_DEFINE([COB_NO_SELFOPEN], [1]) fi -if test "$with_visam" = "yes"; then +if test "$with_visam" = yes; then COB_HAS_ISAM=visam -elif test "$with_vbisam" = "yes"; then +elif test "$with_vbisam" = yes; then COB_HAS_ISAM=vbisam -elif test "$with_disam" = "yes"; then +elif test "$with_disam" = yes; then COB_HAS_ISAM=disam -elif test "$with_cisam" = "yes"; then +elif test "$with_cisam" = yes; then COB_HAS_ISAM=cisam -elif test "$with_db" = "yes"; then +elif test "$with_db" = yes; then COB_HAS_ISAM=db -elif test "$with_lmdb" = "yes"; then +elif test "$with_lmdb" = yes; then COB_HAS_ISAM=lmdb -elif test "$with_odbc" = "yes"; then +elif test "$with_odbc" = yes; then #COB_HAS_ISAM=odbc needs manual adjustments for testsuite, not automatically set true -elif test "$with_oci" = "yes"; then +elif test "$with_oci" = yes; then #COB_HAS_ISAM=oci needs manual adjustments for testsuite, not automatically set true -elif test "$with_index_extfh" = "yes"; then +elif test "$with_index_extfh" = yes; then COB_HAS_ISAM=index_extfh else COB_HAS_ISAM=no @@ -2609,13 +2672,13 @@ case "$with_indexed" in ;; esac -if test "$USE_CURSES" = "not_found" -o "$USE_CURSES" = "no"; then +if test "$USE_CURSES" = "not_found" -o "$USE_CURSES" = no; then COB_HAS_CURSES=no else COB_HAS_CURSES=yes fi -if test "$with_xml2" = "yes"; then +if test "$with_xml2" = yes; then COB_HAS_XML2=yes with_xml2=libxml2 else @@ -2630,14 +2693,14 @@ else COB_HAS_JSON=$USE_JSON fi -AM_CONDITIONAL([COB_MAKE_CISAM_LIB], [test "$cob_gen_cisam" = "yes"]) -AM_CONDITIONAL([COB_MAKE_DISAM_LIB], [test "$cob_gen_disam" = "yes"]) -AM_CONDITIONAL([COB_MAKE_VBISAM_LIB], [test "$cob_gen_vbisam" = "yes"]) -AM_CONDITIONAL([COB_MAKE_VISAM_LIB], [test "$cob_gen_visam" = "yes"]) -AM_CONDITIONAL([COB_MAKE_BDB_LIB], [test "$cob_gen_bdb" = "yes"]) -AM_CONDITIONAL([COB_MAKE_ODBC_LIB], [test "$cob_gen_odbc" = "yes"]) -AM_CONDITIONAL([COB_MAKE_OCI_LIB], [test "$cob_gen_oci" = "yes"]) -AM_CONDITIONAL([COB_MAKE_LMDB_LIB], [test "$cob_gen_lmdb" = "yes"]) +AM_CONDITIONAL([COB_MAKE_CISAM_LIB], [test "$cob_gen_cisam" = yes]) +AM_CONDITIONAL([COB_MAKE_DISAM_LIB], [test "$cob_gen_disam" = yes]) +AM_CONDITIONAL([COB_MAKE_VBISAM_LIB], [test "$cob_gen_vbisam" = yes]) +AM_CONDITIONAL([COB_MAKE_VISAM_LIB], [test "$cob_gen_visam" = yes]) +AM_CONDITIONAL([COB_MAKE_BDB_LIB], [test "$cob_gen_bdb" = yes]) +AM_CONDITIONAL([COB_MAKE_ODBC_LIB], [test "$cob_gen_odbc" = yes]) +AM_CONDITIONAL([COB_MAKE_OCI_LIB], [test "$cob_gen_oci" = yes]) +AM_CONDITIONAL([COB_MAKE_LMDB_LIB], [test "$cob_gen_lmdb" = yes]) AM_CONDITIONAL([LOCAL_CJSON],[test "$USE_JSON" = "local"]) @@ -2709,6 +2772,7 @@ AC_SUBST([COB_OBJECT_EXT]) AC_SUBST([COB_MODULE_EXT]) AC_SUBST([COB_EXE_EXT]) AC_SUBST([LIBCOB_VER]) +AC_SUBST([COB_ENABLE_DEBUG], [$enable_debug]) # needed for tests/atlocal dnl was used in bin/Makefile.am - seems not to be needed dnl AC_SUBST([COB_EXPORT_DYN]) @@ -2771,14 +2835,14 @@ AC_MSG_NOTICE([ COB_EXPORT_DYN ${COB_EXPORT_DYN}]) if test "x$striplib" != x; then AC_MSG_NOTICE([ COB_STRIP_CMD ${striplib}]) fi -if test "${DEFINE_DL}" = "yes" ; then +if test "${DEFINE_DL}" = yes ; then AC_MSG_NOTICE([ Dynamic loading: System]) else AC_MSG_NOTICE([ Dynamic loading: Libtool]) fi AC_MSG_NOTICE([ Use gettext for international messages: ${USE_NLS}]) AC_MSG_NOTICE([ Use fcntl for file locking: ${ac_cv_func_fcntl}]) -AC_MSG_NOTICE([ Use math multiple precision library: ${USE_MATH}]) +AC_MSG_NOTICE([ Use math multiple precision library: ${with_math}]) case "$USE_CURSES" in not_found) AC_MSG_NOTICE([ screen I/O (no curses found): NO]) @@ -2790,39 +2854,39 @@ case "$USE_CURSES" in AC_MSG_NOTICE([ Use curses library for screen I/O: ${USE_CURSES}]) ;; esac -if test "$with_debug_log" = "yes"; then +if test "$with_debug_log" = yes; then AC_MSG_NOTICE([ Enable GnuCOBOL developer logging yes]) fi -if test "$with_seqra_extfh" = "yes"; then +if test "$with_seqra_extfh" = yes; then AC_MSG_NOTICE([ Use external SEQ/RAN file handler: yes]) AC_MSG_WARN([ Obsolete feature "OpenCOBOL-only-EXTFH" used!]) fi -if test "$with_index_extfh" = "yes"; then +if test "$with_index_extfh" = yes; then AC_MSG_NOTICE([ Use external INDEXED file handler yes]) AC_MSG_WARN([ Obsolete feature "OpenCOBOL-only-EXTFH" used!]) fi -if test "$with_visam" = "yes"; then +if test "$with_visam" = yes; then AC_MSG_NOTICE([ Use V-ISAM for INDEXED I/O yes]) fi -if test "$with_disam" = "yes"; then +if test "$with_disam" = yes; then AC_MSG_NOTICE([ Use DISAM for INDEXED I/O yes]) fi -if test "$with_cisam" = "yes"; then +if test "$with_cisam" = yes; then AC_MSG_NOTICE([ Use C-ISAM for INDEXED I/O yes]) fi -if test "$with_vbisam" = "yes"; then +if test "$with_vbisam" = yes; then AC_MSG_NOTICE([ Use VBISAM for INDEXED I/O yes]) fi -if test "$with_db" = "yes"; then +if test "$with_db" = yes; then AC_MSG_NOTICE([ Use Berkeley DB for INDEXED I/O: yes]) fi -if test "$with_lmdb" = "yes"; then +if test "$with_lmdb" = yes; then AC_MSG_NOTICE([ Use LMDB for INDEXED I/O: yes]) fi -if test "$with_odbc" = "yes"; then +if test "$with_odbc" = yes; then AC_MSG_NOTICE([ Use ODBC for INDEXED/RELATIVE I/O: yes]) fi -if test "$with_oci" = "yes"; then +if test "$with_oci" = yes; then AC_MSG_NOTICE([ Use Oracle (OCI) for INDEXED/RELATIVE I/O: yes]) fi diff --git a/libcob/ChangeLog b/libcob/ChangeLog index 64673ba1d..b73a9b5a6 100644 --- a/libcob/ChangeLog +++ b/libcob/ChangeLog @@ -1,4 +1,9 @@ +2024-11-06 David Declerck + + Reverted change 2022-02-21 to integrate change + from GnuCOBOL 3.1 2023-04-04 + 2024-08-04 David Declerck Adjustments to merge 2020-06-20: @@ -44,7 +49,7 @@ * fileio.c (apply_file_paths): extracted from cob_chk_file_mapping to factor out duplicated code -2023-06-02 Simon Sobisch +2024-06-02 Simon Sobisch * fisam.c (isam_read_next): use ISSTAT only for COB_WITH_STATUS_02, fixing compile errors with VBISAM @@ -78,11 +83,274 @@ * fileio.c (cob_file_sort_options), common.h: new function to pass more options, so far only used to set flag_merge +2023-05-12 Simon Sobisch + + * screenio.c (cob_screen_attr): always parse COBOL and curses color value + * screenio.c (cob_to_curses_color): signature changed - operate on integer + to be reusable for CONTROL handling, + separate return value instead of setting the default color + * screenio.c (adjust_attr_from_extended_color): new function directly + handling the attribute adjustment, replaced (has_extended_color) + * screenio.c (handle_control_field_color, get_cob_color_from_color_value): + new functions to get COBOL color number from text and handling it + * common.h (cob_colors): changed color defines to enum + * move.c: fix some compiler warnings by explicit casts + * fix non-constant aggregate initializer for dynamic field/attr/pic + +2023-05-10 Simon Sobisch + + * screenio.c (adjust_attr_from_color_field, + adjust_attr_from_control_field): new functions to adjust screenio + attributes during runtime via COLOR and CONTROL fields + (later function mostly a stub with minimal "parsing" so far) + * screenio.c (cob_screen_attr): refactor to read colors first, allowing + later override via new functions + * screenio.c (cob_screen_set_mode, cob_screen_line_col): minor refactoring + +2023-05-09 Simon Sobisch + + * cconv.c (cob_field_to_string): moved from common.c + * cconv.c (cob_init_cconv), coblocal.h, common.c: added + * cconv.c (cob_toupper, cob_tolower, cob_init_cconv), coblocal.h: + included (copy from cobc/reserved.c) + * coblocal.h (enum cob_case_modifier): new enum to select case-adjustment + * cconv.c (cob_field_to_string), coblocal.h: adjusted function signature, + allowing for optional change of case during copy and returning the size + to process or negative error values in case of "no data to process" + * cconv.c (cob_field_to_string): return error if truncating would be + necessary + * reportio.c, intrinsic.c, fileio.c->fextfh.c,fsqlxfd.c, common.c, call.c: adjusted for new + signature of cob_field_to_string + * intrinsic.c (locale_time, cob_intr_locale_date, cob_intr_locale_compare): + always use full locale string passed, error handling improved + * common.c (cob_set_locale, cob_get_environment, cob_display_env_value): + use local buffer, error handling improved + + FR #189 + FR #355 - runtime-adjustable attributes for extended screenio + * screenio.c (cob_accept_field, cob_display_field), common.h: new vararg + functions to take variable attribute fields, including the new fields + CONTROL, COLOR and CURSOR + * screenio.c (field_accept): added cursor parameter and handle it for both + "initial cursor position" and - if it isn't a constant - also for "exit + cursor position", count max-pos on input allowing position to last + position if CURSOR is outside of the data + * screenio.c (field_accept, field_display, cob_screen_attr): added color + and control parameters + * common.h: COB_SCREEN_CONV new attribute, moved "parsing only" attribute + COB_SCREEN_GRID to higher number + +2023-05-05 Simon Sobisch + + cleanup for handling ASCII/EBCDIC sign overpunch + * common.c (cob_get_sign_ebcdic) [COB_EBCDIC_MACHINE]: direct check of + sign nibble + * common.c (cob_get_sign_ebcdic) [!COB_EBCDIC_MACHINE]: adjusted handling + of invalid data + * common.c (cob_real_get_sign), coblocal.h: additional argument to specify + if data has to be always unpunched (old behavior) or only for systems + not matching the sign (e. g. non-ebcdic machine with ebcdic-sign) where + unpunch is needed to get the numeric data (otherwise we already get it + by bit-masking); added new macros COB_GET_SIGN_ADJUST and + COB_PUT_SIGN_ADJUSTED that use this to only overwrite data when necessary + * common.c (cob_cmp_all, cob_cmp_alnum), + move.c (cob_move_display_to_packed, cob_move_display_to_binary, + cob_display_get_int, display_get_long_long), + numeric.c (cob_decimal_set_display, cob_display_add_int): use of + COB_GET_SIGN_ADJUST / COB_PUT_SIGN_ADJUSTED for better performance and + less "changing read-only source data" + * common.c (cob_cmp_all, cob_cmp_alnum): handle numeric fields with + SIGN LEADING SEPARATE correctly, minor optimization by reading the + data/size pointer only once + +2023-05-02 Simon Sobisch + + * numeric.c (cob_add, cob_addsub_optimized): also use (cob_add_bcd) if the + added/subtracted field is one of the usages DISPLAY/COMP-5/BINARY as + converting this to BCD and using this function is much faster than + converting everything to cob_decimal first, then using the fast GMP + compute, then converting the cob_decimal to BCD back + * move.c (cob_move_display_to_packed, cob_move_packed_to_display), + coblocal.h: make functions accessible within libcob + * move.c (cob_move_display_to_packed): performance adjustment by moving a + check out of a loop + +2023-04-29 Simon Sobisch + + * numeric.c (cob_add_bcd): don't execute rounding if COB_STORE_TRUNCATION + is requested + * numeric.c (cob_add_bcd): combined some code paths for less duplication + * numeric.c (handle_bcd_rounding): extracted from (cob_add_bcd) to remove + code duplication and allow code flow to be followed easier + +2023-04-28 Simon Sobisch + + * common.c (explain_field_type): distinguish COMP-6 and unsigned packed + from PACKED-DECIMAL + * (check_current_date): switched to iterating over COB_CURENT_DATE + by pointer + * numeric.c: integrated changes of Chuck Haatveet 2023-03-28 for BCD ADD + with tuning for even more speed by using best matching types and + refactoring, calling the new cob_add_bcd internally from + (cob_add, cob_sub) if all fields are BCD + * numeric.c (cob_add_bcd, check_overflow_fix_final_sign): fix handling + for COB_STORE_KEEP_ON_OVERFLOW and edge-case bugs + +2023-04-27 Simon Sobisch + + * move.c (cob_move_display_to_packed), numeric.c (cob_decimal_get_packed): + simplify code, following idea by of Chuck Haatveet + * common.c (cob_is_numeric): speedup by using new macro IS_INVALID_BCD_DATA + which uses the new lookup table b2i + * common.c: new macros IS_VALID_DIGIT_DATA / IS_INVALID_DIGIT_DATA added + and used + * numeric.c (cob_decimal_do_round, cob_decimal_get_field): fix + COB_STORE_PROHIBITED to not overwrite target data and always raise an + exception if rounding would be necessary + +2023-04-26 Simon Sobisch + + * general: only include coblocal.h which includes common.h already + * common.c (cob_continue_after): raise nonfatal exception + COB_EC_CONTINUE_LESS_THAN_ZERO for negative waits + * common.c [TIME_T_IS_NON_ARITHMETIC]: dropped checking for this define as + POSIX requires time_t to be an arithmetic type + * cconv.c (cob_load_collation): minro cleanup + * fileio.c (EXTFH) [!COB_64_BIT_POINTER]->fextfh.c: fix check for opcode OP_CLOSE + * move.c (store_common_region): speedup by not re-validating data if caller + already provides that; adjusted callers to specify that + * common.c (cob_sys_hosted): prefer memcmp over strncmp with known size + * common.c (, cob_sys_hosted): handling timezone functions + +2023-04-18 Simon Sobisch + + * numeric.c: integrated changes of Chuck Haatveet 2023-03-28 for BCD MOVE + with tuning for even more speed by using best matching types and + refactoring + * common.h: added cob_move_bcd as external function declaration + * move.c (cob_move): add call to cob_move_bcd for fields without negative + scale + * common.c (cob_is_numeric, cob_is_alpha, cob_is_upper, cob_is_lower, + cob_check_numeric, cob_check_numdisp, cob_correct_numeric): + prefer pointer arithmetic to arrays + * common.c (cob_is_numeric, cob_check_numdisp, cob_set_date_from_epoch, + set_config_val, translate_boolean_to_int): prefer range check over + isdigit and COB_D2I over atoi + * numeric.c (cob_decimal_get_packed): set by optimized integer routine + when possible + +2023-04-17 Simon Sobisch + + * numeric.c (cob_decimal_setget_fld, cob_decimal_get_packed, + cob_decimal_get_display), common.h: new option COB_STORE_NO_SIZE_ERROR + to prevent arithmetic exception being raised during internal MOVE + * intrinsic.c (cob_intr_lowest_algebraic, cob_intr_highest_algebraic): + refactored code for COMP-5 + * move.c (cob_move_display_to_packed), numeric.c (cob_decimal_get_packed): + minor adjustment to use optimal code for internal DISPLAY to PACKED, + even without C compiler optimizations active + * move.c (cob_move_ibm): speedup by using pointer arithmetic + +2023-04-13 Simon Sobisch + + performance adjustments for HEX-OF and HEX-TO-CHAR + * intrinsic.c (test_digit, cob_intr_hex_to_char, cob_intr_locale_date, + cob_intr_locale_time), move.c (cob_move_alphanum_to_display, + cob_get_s64_pic9): prefer range check over isdigit for improved speed + * numeric.c (cob_decimal_get_packed): use COB_D2I instead of subtracting + * intrinsic.c (cob_intr_hex_to_char): minor refactoring for speedup + * intrinsic.c (cob_intr_hex_of): rewritten to use hex value table instead + of sprintf, saving around 80% of cpu instructions + + performance adjustments for location code compatibility for old modules + * common.c (get_stmt_from_name): extracted from cob_set_location and + cob_trace_stmt to remove duplication + * common.c (get_stmt_from_name): rewritten to store the last statements, + which heavily reduces the use of strcmp and the hashing function + * common.c (do_trace_statement): extracted from cob_trace_statement + +2023-04-04 Simon Sobisch + + * move.c (cob_move, cob_move_display_to_packed, cob_move_packed_to_display, + cob_move_binary_to_binary, cob_move_display_to_binary), + numeric.c (cob_decimal_set_packed, cob_decimal_get_packed, + cob_decimal_get_binary), + termio.c (pretty_display_numeric): fix digit and size calculation of + fields with a PICTURE containing leading / trailing P + * termio.c (cob_display_common): minor refactoring + +2023-04-02 Simon Sobisch + + * move.c (indirect_move): prefer local buffer for most cases + * move.c (cob_move): speedup handling for binary fields to fields + with different scale (to binary / packed) + * move.c (cob_move_alphanum_to_edited, packed_get_long_long, + cob_display_get_int, display_get_long_long, + cob_move_alphanum_to_edited): minor refactoring + * move.c (cob_move_display_to_binary): skip leading zeros; + pre-truncate by offset instead of post-truncate by calculation + * move.c (cob_move_display_to_binary): switch to GMP for > 19 digits, + fixing wrong value in binary + * numeric.c (cob_set_packed_int, cob_decimal_get_packed): minor performance + tuning + +2023-03-28 Chuck Haatvedt + + * numeric.c (cob_shift_left_nibble, cob_shift_right_nibble): variants of + insert_packed_aligned for cob_move_bcd + * numeric.c (cob_move_bcd): added for highly improved BCD MOVE, + saving more than 50% cpu cycles + * numeric.c (cob_add_bcd, check_overflow_fix_final_sign, + count_leading_zeros): added for highly improved BCD ADD, + saving more than 50% cpu cycles + +2023-03-27 Simon Sobisch + + * numeric.c, intrinsic.c: handling of size errors ... NAN... + +2023-03-23 Simon Sobisch + + changes for improved performance + * move.c (store_common_region): skipping leading zeroes, adjusted copy-code + * move.c (cob_move_display_to_packed), numeric.c (cob_decimal_get_packed): + rewrite to not do division and modulo for each half-byte + * move.c (cob_move_edited_to_display): prefer pointer arithmetic to arrays + * move.c (cob_get_int, cob_get_llint): speedup for binary, tuned + for "no decimal" then for "comma" + * numeric.c (cob_cmp_numdisp): prefer pointer arithmetic to arrays + * numeric.c (cob_get_long_ebcdic_sign, cob_get_long_ascii_sign): only set + sign, not change the value + +2023-03-20 Simon Sobisch + + * numeric.c, coblocal.h: fix requesting huge memory for + mpf to cob_decimal conversions + +2023-03-06 Simon Sobisch + + * numeric.c (cob_decimal_get_display): fix truncation with leading zeros + +2023-03-04 Simon Sobisch + + * common.c, common.h: add COB_FERROR_FATAL_EXCEPTION + +2023-03-03 Simon Sobisch + + * common.c, common.h: new external field + define COB_ZEROES_ALPHABETIC / + COB_ZEROES_ALPHABETIC_BYTE_LENGTH + * common.c (compare_zeroes): new function for common comparison to ZERO + * common.c (compare_character): fix issue with not comparing last bytes + +2023-02-27 Simon Sobisch + + * screenio.c (field_accept): minor refactoring to not update + COB_TERM_BUFF for ACCEPT OMITTED + 2023-02-24 Simon Sobisch * common.c (cob_check_beyond_exit), common.h: fix prototype to match strings * numeric.c (cob_decimal_get_packed): removed code for "huge packed" fields as we don't have packed fields with more than 38 digits + * numeric.c (cob_pow_10): unsigned parameter, fixing some overflows in GMP 2023-02-24 Ron Norman @@ -92,11 +360,27 @@ * numeric.c: Changes to speed up COMP-3 handling +2023-02-22 Simon Sobisch + + fix bug #874 DISPLAY of 9P fields (P to the left of the decimal point) + * termio.c (pretty_display_numeric): fix printing one byte after + actual data + * termio.c (display_numeric): fix printing amount of P as leading zeroes + +2023-02-21 Simon Sobisch + + * numeric.c (cob_decimal_set_packed): backport and extend optimization + from 4.x by Ron - now skipping initial zeros and for huge fields handle + 4 digits at once + 2023-02-20 Simon Sobisch * intrinsic.c, numeric.c: explicit check result of mpz_sgn to 0/!0/1/-1 * intrinsic.c (cob_intr_random): fix binary end for implicit seed * intrinsic.c (numval): minor optimization for invalid numeric + * termio.c (display_numeric, pretty_display_numeric): use common + COB_FIELD_INIT instead of manually init of field named "temp"; + minor speedup in output 2023-02-19 Ron Norman @@ -105,6 +389,11 @@ * termio.c: Updated 'bin_digits' table for larger fields * common.h: Removed define COB_MAX_COMPX +2023-02-10 Simon Sobisch + + * numeric.c (cob_bcd_cmp, packed_is_negative, decimal_convert_scale, + insert_packed_aligned): finished + 2023-02-09 Simon Sobisch * mlio.c, common.c: handle HAVE_JSON_C_JSON_H @@ -114,6 +403,14 @@ warnings * cconv.c (cob_load_collation), common.c, intrinisic.c (cob_intr_random), termio.c: minor adjustments to fix compiler warnings + * fileio.c (copy_fcd_to_file)->fextfh.c: fixed memory issues with + writing to assign and select name + * fileio.c (save_status): don't synch directly after open or close + * fileio.c (cob_file_open), (open_next): include binary in open flags if + cobsetptr->cob_unix_lf is set + * fileio.c (open_next): set binary file mode, minor refactoring + * fileio.c (cob_file_close) [_WIN32]: don't try to unlock invalid file + handles; mark file descriptor as closed when file handle was closed 2023-02-06 Simon Sobisch @@ -136,6 +433,22 @@ * move.c (cob_get_int, cob_get_llint): handle negative scale for binary fields +2023-02-03 Simon Sobisch + + * numeric.c (packed_is_negative): new function to ignore any sign nibbles + but "negative 0x0d"; only handle as negative if non-zero + * numeric.c (cob_cmp_packed): refactored (partially moved code out to + cmp_packed_intern) and performance-improved + * numeric.c (cob_bcd_cmp, decimal_convert_scale, insert_packed_aligned), + common.h: new functions for direct compare of BCD fields without the + overhead to convert to integer + * numeric.c (cob_numeric_cmp), coblocal.h (COB_ATTR_INIT_A, + COB_FIELD_INIT_F): use best possible comparison instead of expensive + fallback to cob_decimal; note: this also applies to num. keys in SORT + * coblocal.h: request to always inline cob_min_int / cob_max_int + * common.h [_MSC_VER]: disabled "internal" byteswap routines, instead use + generic ones as they work as expected + 2023-01-28 Simon Sobisch * numeric.c (cob_packed_get_sign): move check for COB_FIELD_NO_SIGN_NIBBLE @@ -206,6 +519,10 @@ code to inline functions * numeric.c (cob_s32_pow, cob_s64_pow): use of register type +2023-01-16 Simon Sobisch + + * statement.def (STMT_INIT_STORAGE): new internal statement + 2023-01-15 Ron Norman * screenio.c: renamed max_pairs_available as this is defined on HPUX @@ -261,6 +578,20 @@ * fileio.c [!COB_EXPERIMENTAL]: disable "new" status 0P via preprocessor to inspect later for either include as COB_LS_VALIDATE=PRINT or drop +2022-12-15 Simon Sobisch + + * common.c, common.h: new external field + define + COB_SPACES_ALPHABETIC / COB_SPACES_ALPHABETIC_BYTE_LENGTH + * common.c: split sort_compare to variant with and without collation, + using direct memcmp for the later + * common.c (compare_spaces, compare_character): new function used for + comparison of data without collation using memcmp in doubled areas + instead of looping over every character + * common.c (cob_cmp_alnum, cob_cmp_all): use direct memcmp and new + functions if no collation was specified + * common.c (common_cmpc, common_cmps): always use collation as all + callers left in pass it (and otherwise call the new functions) + 2022-12-13 David Declerck * cconv.c: file moved from cobc to libcob @@ -390,7 +721,7 @@ * numeric.c: refactoring of bit-wise functions for readability * numeric.c (cob_decimal_set_display): prefer local buffer over dynamic allocation - * numeric.c (cob_cmp_int, cob_cmp_uint, cob_cmp_llint): pre-comparision + * numeric.c (cob_cmp_int, cob_cmp_uint, cob_cmp_llint): pre-comparison by checking sign/zero and reduced number of decimal shifting dynamic allocation * move.c (store_common_region): minor optimization diff --git a/libcob/call.c b/libcob/call.c index 3420a4d3f..d5c51b88f 100644 --- a/libcob/call.c +++ b/libcob/call.c @@ -48,9 +48,8 @@ FILE *fmemopen (void *buf, size_t size, const char *mode); #define HAVE_FMEMOPEN 1 #endif -/* Force symbol exports */ +/* include internal and external libcob definitions, forcing exports */ #define COB_LIB_EXPIMP -#include "common.h" #include "coblocal.h" /* NOTE - The following variable should be uncommented when @@ -1205,7 +1204,7 @@ void * cob_call_field (const cob_field *f, const struct cob_call_struct *cs, const unsigned int errind, const int fold_case) { - char *buff, *entry, *dirent; + char *name, *entry, *dirent; void *p; /* LCOV_EXCL_START */ @@ -1214,23 +1213,23 @@ cob_call_field (const cob_field *f, const struct cob_call_struct *cs, } /* LCOV_EXCL_STOP */ - buff = cob_get_buff (f->size + 1); - cob_field_to_string (f, buff, f->size); + name = cob_get_buff (f->size + 1); + cob_field_to_string (f, name, f->size, CCM_NONE); /* check for uncommon leading space - trim it */ - if (*buff == ' ') { + if (*name == ' ') { size_t len; /* same warning as in cobc/typeck.c */ cob_runtime_warning ( - _("'%s' literal includes leading spaces which are omitted"), buff); - len = strlen (buff); - while (*buff == ' ') { - memmove (buff, buff + 1, --len); + _("'%s' literal includes leading spaces which are omitted"), name); + len = strlen (name); + while (*name == ' ') { + memmove (name, name + 1, --len); } - buff[len] = 0; + name[len] = 0; } - entry = cob_chk_call_path (buff, &dirent); + entry = cob_chk_call_path (name, &dirent); cobglobptr->cob_call_name_hash = cob_get_name_hash (entry); /* Check if contained program - which may override otherwise @@ -1368,7 +1367,7 @@ cob_cancel_field (const cob_field *f, const struct cob_call_struct *cs) return; } name = cob_get_buff (f->size + 1); - cob_field_to_string (f, name, f->size); + cob_field_to_string (f, name, f->size, CCM_NONE); entry = cob_chk_dirp (name); /* Check if contained program */ diff --git a/libcob/cconv.c b/libcob/cconv.c index dae645026..9d41a8fbc 100644 --- a/libcob/cconv.c +++ b/libcob/cconv.c @@ -1,5 +1,5 @@ /* - Copyright (C) 2005,2006,2022-2023 Free Software Foundation, Inc. + Copyright (C) 2005, 2006, 2013, 2022-2023 Free Software Foundation, Inc. Written by Roger While, Nicolas Berthier, Simon Sobisch, David Declerck This file is part of GnuCOBOL. @@ -26,18 +26,81 @@ #include #include -/* Force symbol exports */ +/* include internal and external libcob definitions, forcing exports */ #define COB_LIB_EXPIMP -#include "common.h" #include "sysdefines.h" #include "coblocal.h" +#ifdef HAVE_DESIGNATED_INITS +static const unsigned char lower_tab[256] = { + ['a'] = 'A', + ['b'] = 'B', + ['c'] = 'C', + ['d'] = 'D', + ['e'] = 'E', + ['f'] = 'F', + ['g'] = 'G', + ['h'] = 'H', + ['i'] = 'I', + ['j'] = 'J', + ['k'] = 'K', + ['l'] = 'L', + ['m'] = 'M', + ['n'] = 'N', + ['o'] = 'O', + ['p'] = 'P', + ['q'] = 'Q', + ['r'] = 'R', + ['s'] = 'S', + ['t'] = 'T', + ['u'] = 'U', + ['v'] = 'V', + ['w'] = 'W', + ['x'] = 'X', + ['y'] = 'Y', + ['z'] = 'Z' +}; +static const unsigned char upper_tab[256] = { + ['A'] = 'a', + ['B'] = 'b', + ['C'] = 'c', + ['D'] = 'd', + ['E'] = 'e', + ['F'] = 'f', + ['G'] = 'g', + ['H'] = 'h', + ['I'] = 'i', + ['J'] = 'j', + ['K'] = 'k', + ['L'] = 'l', + ['M'] = 'm', + ['N'] = 'n', + ['O'] = 'o', + ['P'] = 'p', + ['Q'] = 'q', + ['R'] = 'r', + ['S'] = 's', + ['T'] = 't', + ['U'] = 'u', + ['V'] = 'v', + ['W'] = 'w', + ['X'] = 'x', + ['Y'] = 'y', + ['Z'] = 'z' +}; +#else +static unsigned char lower_tab[256]; +static unsigned char upper_tab[256]; +static const unsigned char plower_tab[] = "abcdefghijklmnopqrstuvwxyz"; +static const unsigned char plower_val[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; +#endif + static int cob_convert_hex_digit (char h) { - if (h >= '0' && h <= '9') return h - '0'; - else if (h >= 'A' && h <= 'F') return 10 + h - 'A'; - else if (h >= 'a' && h <= 'f') return 10 + h - 'a'; + if (h >= '0' && h <= '9') return COB_D2I (h); + h = cob_toupper (h); + if (h >= 'A' && h <= 'F') return 10 + h - 'A'; else return -1; } @@ -76,13 +139,12 @@ cob_load_collation (const char *col_name, int line; size_t n, i; FILE *f; - const char *config_dir; char filename[COB_FILE_BUFF]; const char *last_err_name = NULL; if (col_name[0] == '.' || col_name[0] == SLASH_CHAR #ifdef _WIN32 - || col_name[0] != '\0' && col_name[1] == ':' + || (col_name[0] != '\0' && col_name[1] == ':') #endif ) { /* If it's a path, use it as-is, including trailing NUL */ @@ -93,7 +155,7 @@ cob_load_collation (const char *col_name, memcpy (filename, col_name, n); } else { /* Otherwise, prepend the config dir and append the .ttbl suffix */ - config_dir = getenv ("COB_CONFIG_DIR"); + const char *config_dir = getenv ("COB_CONFIG_DIR"); if (config_dir == NULL) { config_dir = COB_CONFIG_DIR; } @@ -140,7 +202,8 @@ cob_load_collation (const char *col_name, cob_runtime_error (_("error reading translation table '%s'"), col_name); fclose (f); return -1; - } else if (feof (f) && i != 256 && i != 512) { + } + if (feof (f) && i != 256 && i != 512) { if (i < 256) { cob_runtime_error (_("not enough data in translation table '%s'"), col_name); } else { @@ -172,3 +235,138 @@ cob_load_collation (const char *col_name, return 0; } + +/* Upper-casing for internal words using efficient 7bit C locale table lookup. */ +unsigned char +cob_toupper (const unsigned char c) +{ + const unsigned char tab_entry = lower_tab[c]; + if (tab_entry) { + return tab_entry; + } + return c; +} + +/* Lower-casing for internal words using efficient 7bit C locale table lookup. */ +unsigned char +cob_tolower (const unsigned char c) +{ + const unsigned char tab_entry = upper_tab[c]; + if (tab_entry) { + return tab_entry; + } + return c; +} + +/* stores the field's rtrimmed string content into the given buffer + with maxlength, optionally doing upper-/lowercasing on the fly, + returns negative values on error, otherwise size of the data + processed */ +int +cob_field_to_string (const cob_field *f, void *str, const size_t maxsize, + const enum cob_case_modifier target_case) +{ + register unsigned char *end, *data, *s; + + s = (unsigned char *)str; + if (f == NULL) { + snprintf (str, maxsize, "%s", ("NULL field")); + *(s + maxsize - 1) = 0; + return -1; + } + + if (f->size == 0) { + *s = 0; + return -2; + } + data = f->data; + /* check if field has data assigned (may be a BASED / LINKAGE item) */ + if (data == NULL) { + snprintf (str, maxsize, "%s", ("field with NULL address")); + *(s + maxsize - 1) = 0; + return -3; + } + end = data + f->size - 1; + while (end > data) { + if (*end != ' ' && *end) { + break; + } + end--; + } + if (*end == ' ' || *end == 0) { + *s = 0; + return 0; + } + + /* note: the specified max does not contain the low-value */ + if ((size_t)(end - data) > maxsize) { +#if 0 /* Simon: it is likely not a good idea to just ignore the data */ + end = data + maxsize; +#else + *s = 0; + return -4; +#endif + } + switch (target_case) { + case CCM_NONE: + while (data <= end) { + *s++ = *data++; + } + break; + case CCM_LOWER: + while (data <= end) { + *s++ = cob_tolower (*data++); + } + break; + case CCM_UPPER: + while (data <= end) { + *s++ = cob_toupper (*data++); + } + break; + case CCM_LOWER_LOCALE: + while (data <= end) { + *s++ = tolower (*data++); + } + break; + case CCM_UPPER_LOCALE: + while (data <= end) { + *s++ = toupper (*data++); + } + break; + } + *s = 0; + return end + 1 - f->data; +} + + +#ifndef HAVE_DESIGNATED_INITS +/* initialize the 7bit upper/lower table */ +static void +init_upper_lower (void) +{ + const unsigned char *p, *v; + + memset (lower_tab, 0, sizeof (lower_tab)); + v = plower_val; + p = plower_tab; + for (; *p; ++p, ++v) { + lower_tab[*p] = *v; + } + memset (upper_tab, 0, sizeof (upper_tab)); + p = plower_val; + v = plower_tab; + for (; *p; ++p, ++v) { + upper_tab[*p] = *v; + } +} +#endif + + +void +cob_init_cconv (cob_global *lptr) +{ + COB_UNUSED (lptr); +#ifndef HAVE_DESIGNATED_INITS + init_upper_lower (); +#endif +} diff --git a/libcob/coblocal.h b/libcob/coblocal.h index fb520c5ae..f214ef9bb 100644 --- a/libcob/coblocal.h +++ b/libcob/coblocal.h @@ -145,24 +145,33 @@ #define COB_128_OR_EXTEND COB_U64_C(0x0002000000000000) /* Field/attribute initializers */ -#define COB_FIELD_INIT(x,y,z) do { \ +#define COB_FIELD_INIT_F(field,x,y,z) do { \ field.size = x; \ field.data = y; \ field.attr = z; \ } ONCE_COB +#define COB_FIELD_INIT(x,y,z) \ + COB_FIELD_INIT_F(field,x,y,z) -#define COB_ATTR_INIT(u,v,x,y,z) do { \ +#define COB_ATTR_INIT_A(attr,u,v,x,y,z) do { \ attr.type = u; \ attr.digits = v; \ attr.scale = x; \ attr.flags = y; \ attr.pic = z; \ } ONCE_COB +#define COB_ATTR_INIT(u,v,x,y,z) \ + COB_ATTR_INIT_A(attr,u,v,x,y,z) #define COB_GET_SIGN(f) \ - (COB_FIELD_HAVE_SIGN (f) ? cob_real_get_sign (f) : 0) + (COB_FIELD_HAVE_SIGN (f) ? cob_real_get_sign (f, 0) : 0) +#define COB_GET_SIGN_ADJUST(f) \ + (COB_FIELD_HAVE_SIGN (f) ? cob_real_get_sign (f, 1) : 0) #define COB_PUT_SIGN(f,s) \ do { if (COB_FIELD_HAVE_SIGN (f)) cob_real_put_sign (f, s); } ONCE_COB +#define COB_PUT_SIGN_ADJUSTED(f,s) \ + do { if (s == -2) cob_real_put_sign (f, -1); \ + else if (s == 2) cob_real_put_sign (f, 1); } ONCE_COB #ifdef COB_PARAM_CHECK #define COB_CHK_PARMS(x,z) \ @@ -220,7 +229,7 @@ typedef struct __cob_settings { unsigned int cob_time_constant_is_calculated; /* constant contains full date vars */ /* call.c */ - unsigned int cob_physical_cancel; + int cob_physical_cancel; /* 0 "= "logical only" (default), 1 "also unload", -1 "never unload" */ unsigned int name_convert; char *cob_preload_str; char *cob_library_path; @@ -365,9 +374,10 @@ struct config_tbl { /* max sizes */ -/* Maximum bytes in a single/group field, - which doesn't contain UNBOUNDED items */ - /* TODO: add compiler configuration for limiting this */ +/* Maximum bytes in a single/group field and for OCCURS, + which doesn't contain UNBOUNDED items, + along with maximum number of OCCURS; + TODO: add compiler configuration for limiting this */ #ifndef COB_64_BIT_POINTER #define COB_MAX_FIELD_SIZE 268435456 #else @@ -390,6 +400,7 @@ struct config_tbl { COB_EXPIMP const char * cob_io_version (const int, const int); COB_EXPIMP const char * cob_io_name (const int); COB_HIDDEN void cob_init_numeric (cob_global *); +COB_HIDDEN void cob_init_cconv (cob_global *); COB_HIDDEN void cob_init_termio (cob_global *, cob_settings *); COB_HIDDEN void cob_init_fileio (cob_global *, cob_settings *); COB_HIDDEN void cob_init_reportio (cob_global *, cob_settings *); @@ -430,7 +441,7 @@ COB_HIDDEN void cob_exit_mlio (void); COB_HIDDEN FILE *cob_create_tmpfile (const char *); COB_HIDDEN int cob_check_numval_f (const cob_field *); -COB_HIDDEN int cob_real_get_sign (cob_field *); +COB_HIDDEN int cob_real_get_sign (cob_field *, const int); COB_HIDDEN void cob_real_put_sign (cob_field *, const int); #ifndef COB_WITHOUT_DECIMAL @@ -441,6 +452,8 @@ COB_HIDDEN void cob_decimal_get_mpf (mpf_t, const cob_decimal *); COB_HIDDEN void cob_decimal_setget_fld (cob_field *, cob_field *, const int); COB_HIDDEN void cob_decimal_move_temp (cob_field *, cob_field *); +COB_HIDDEN void cob_move_display_to_packed (cob_field *, cob_field *); +COB_HIDDEN void cob_move_packed_to_display (cob_field *, cob_field *); COB_HIDDEN void cob_display_common (const cob_field *, FILE *); COB_HIDDEN void cob_print_ieeedec (const cob_field *, FILE *); @@ -455,10 +468,20 @@ COB_HIDDEN void cob_add_exception (const int); COB_HIDDEN int cob_check_env_true (char*); COB_HIDDEN int cob_check_env_false (char*); COB_HIDDEN const char *cob_get_last_exception_name (void); -COB_EXPIMP void cob_field_to_string (const cob_field *, void *, - const size_t); COB_HIDDEN void cob_parameter_check (const char *, const int); +enum cob_case_modifier { + CCM_NONE, + CCM_LOWER, + CCM_UPPER, + CCM_LOWER_LOCALE, + CCM_UPPER_LOCALE +}; +COB_HIDDEN unsigned char cob_toupper (const unsigned char); +COB_HIDDEN unsigned char cob_tolower (const unsigned char); +COB_EXPIMP int cob_field_to_string (const cob_field *, void *, + const size_t, const enum cob_case_modifier target_case); + COB_HIDDEN cob_settings *cob_get_settings_ptr (void); COB_HIDDEN char *cob_strndup (const char *, const size_t); @@ -485,14 +508,14 @@ COB_EXPIMP char * cob_str_case_str (char *, const char *); /* static inline of smaller helpers */ -static COB_INLINE int +static COB_INLINE COB_A_INLINE int cob_min_int (const int x, const int y) { if (x < y) return x; return y; } -static COB_INLINE int +static COB_INLINE COB_A_INLINE int cob_max_int (const int x, const int y) { if (x > y) return x; diff --git a/libcob/common.c b/libcob/common.c index 54c108eac..799a21fd8 100644 --- a/libcob/common.c +++ b/libcob/common.c @@ -156,7 +156,7 @@ /* end of library headers */ -/* Force symbol exports */ +/* include internal and external libcob definitions, forcing exports */ #define COB_LIB_EXPIMP #include "common.h" #include "cobcapi.h" /* for helper functions */ @@ -183,6 +183,24 @@ #define COB_MAX_ALLOC_SIZE COB_MAX_FIELD_SIZE #endif +/* Global variables */ +#define SPACE_16 " " +#define SPACE_64 SPACE_16 SPACE_16 SPACE_16 SPACE_16 +#define SPACE_256 SPACE_64 SPACE_64 SPACE_64 SPACE_64 +#define SPACE_1024 SPACE_256 SPACE_256 SPACE_256 SPACE_256 +const char *COB_SPACES_ALPHABETIC = SPACE_1024; +#undef SPACE_16 +#undef SPACE_64 +#undef SPACE_256 +#undef SPACE_1024 +#define ZERO_16 "0000000000000000" +#define ZERO_64 ZERO_16 ZERO_16 ZERO_16 ZERO_16 +#define ZERO_256 ZERO_64 ZERO_64 ZERO_64 ZERO_64 +const char *COB_ZEROES_ALPHABETIC = ZERO_256; +#undef ZERO_16 +#undef ZERO_64 +#undef ZERO_256 + struct cob_alloc_cache { struct cob_alloc_cache *next; /* Pointer to next */ void *cob_pointer; /* Pointer to malloced space */ @@ -332,6 +350,27 @@ static const int cob_exception_tab_code[] = { static int cob_switch[COB_SWITCH_MAX + 1]; +/* BCD to Integer translation (full byte -> 0 - 99) */ +static unsigned char b2i[256]= + { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 255, 255, 255, 255, 255, 255, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 255, 255, 255, 255, 255, 255, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 255, 255, 255, 255, 255, 255, + 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 255, 255, 255, 255, 255, 255, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 255, 255, 255, 255, 255, 255, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 255, 255, 255, 255, 255, 255, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 255, 255, 255, 255, 255, 255, + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 255, 255, 255, 255, 255, 255, + 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 255, 255, 255, 255, 255, 255, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 255, 255, 255, 255, 255, 255 }; + +#define IS_INVALID_BCD_DATA(c) (b2i[(unsigned char)c] == 255) + +/* note: use of table d2i was tested and seen to be + slower for checking validity/invalidity + and only 0.2% faster for GET_D2I than COB_D2I */ +#define IS_INVALID_DIGIT_DATA(c) (c < '0' || c > '9') /* not valid digits '0' - '9' */ +#define IS_VALID_DIGIT_DATA(c) (c >= '0' && c <= '9') /* valid digits '0' - '9' */ + /* Runtime exit handling */ static struct exit_handlerlist { struct exit_handlerlist *next; @@ -920,7 +959,8 @@ ss_itoa_u10 (int value) do { digit = u % radix; u /= radix; - *p++ = '0' + digit; + *p++ = COB_I2D (digit); + } while (u > 0); len = p - ss_itoa_buf; @@ -1442,7 +1482,9 @@ cob_set_dump_signal (void *hndlr) #endif } -/* ASCII Sign +/* ASCII Sign - Reading and undo the "overpunch"; + * Note: if used on an EBCDIC machine this is actually _not_ an overpunch + * but a replacement! * positive: 0123456789 * negative: pqrstuvwxy * returns one of: 1 = positive (non-negative), -1 = negative @@ -1499,18 +1541,21 @@ cob_get_sign_ascii (unsigned char *p) return 1; #else if (*p >= (unsigned char)'p' && *p <= (unsigned char)'y') { - *p &= ~64U; + *p &= ~0x40; /* 0x71 'q' -> 0x31 -> '1' */ return -1; } - if (*p >= (unsigned char)'0' && *p <= (unsigned char)'9') { + if (IS_VALID_DIGIT_DATA (*p)) { /* already without sign */ - return -1; + return 1; } *p = (unsigned char)'0'; return 1; #endif } +/* overpunches the pointer 'p' with the sign + * Note: if used on an EBCDIC machine this is actually _not_ an overpunch + * but a replacement! */ static void cob_put_sign_ascii (unsigned char *p) { @@ -1562,19 +1607,49 @@ cob_put_sign_ascii (unsigned char *p) *p = (unsigned char)'0'; } #else - *p |= 64U; + *p |= 0x40; #endif } -/* EBCDIC Sign +/* EBCDIC Sign - Reading and undo the "overpunch"; + * Note: if used on an ASCII machine this is actually _not_ an overpunch + * but a replacement! * positive: {ABCDEFGHI + * unsigned: 0123456789 * negative: }JKLMNOPQR - * returns one of: 1 = positive (non-negative), -1 = negative + * returns one of: 1 = positive (non-negative), -1 = negative, 0 = unsigned */ static int cob_get_sign_ebcdic (unsigned char *p) { +#ifdef COB_EBCDIC_MACHINE + char sign_nibble = *p & 0xF0; + /* What to do here outside of 0 - 9? */ + if ((*p & 0x0F) > 9) { + *p = sign_nibble; + } + switch (sign_nibble) { + /* negative */ + case 0xC0: + /* negative, non-preferred */ + case 0xA0: + case 0xE0: + return 1; + /* positive */ + case 0xD0: + /* positive, non-preferred */ + case 0xB0: + return -1; + /* unsigned */ + case 0xF0: + return 0; + return -1; + default: + /* What to do here outside of sign nibbles? */ + return 1; + } +#else switch (*p) { case '{': *p = (unsigned char)'0'; @@ -1637,13 +1712,18 @@ cob_get_sign_ebcdic (unsigned char *p) *p = (unsigned char)'9'; return -1; default: - /* What to do here */ - *p = (unsigned char)('0' + (*p & 0x0F)); - if (*p > (unsigned char)'9') { + if (*p >= '0' && *p <= '9') { + return 0; + } + /* What to do here outside of 0 - 9? */ + if ((*p & 0x0F) > 9) { *p = (unsigned char)'0'; + } else { + *p = (unsigned char)COB_I2D (COB_D2I (*p)); } return 1; } +#endif } static void @@ -1751,8 +1831,8 @@ cob_put_sign_ebcdic (unsigned char *p, const int sign) } /* compare up to 'size' characters from buffer 'p' - against a single character 'c', - optionally using collation 'col' */ + to a single character 'c', + using collation 'col' */ static int common_cmpc (const unsigned char *p, const unsigned int c, const size_t size, const unsigned char *col) @@ -1760,117 +1840,207 @@ common_cmpc (const unsigned char *p, const unsigned int c, register const unsigned char *end = p + size; int ret; - if (col) { - const unsigned char c_col = col[c]; - while (p < end) { - if ((ret = col[*p] - c_col) != 0) { - return ret; - } - p++; - } - } else { - while (p < end) { - if ((ret = *p - c) != 0) { - return ret; - } - p++; + const unsigned char c_col = col[c]; + while (p < end) { + if ((ret = col[*p] - c_col) != 0) { + return ret; } + p++; } return 0; } +/* compare up to 'size' characters in 's1' to 's2' + using collation 'col' */ static int common_cmps (const unsigned char *s1, const unsigned char *s2, const size_t size, const unsigned char *col) { register const unsigned char *end = s1 + size; int ret; + while (s1 < end) { + if ((ret = col[*s1] - col[*s2]) != 0) { + return ret; + } + s1++, s2++; + } + return 0; +} + +/* compare up to 'size' characters in 'data' to characters + in 'c' with size 'compare_size' */ +static int +compare_character (const unsigned char *data, size_t size, + const unsigned char *c, size_t compare_size) +{ + int ret; + + /* compare date with compare-data up to max compare-size */ + if ((ret = memcmp (data, c, compare_size)) != 0) { + return ret; + } + + /* first bytes in "data" are identical to "compare-data", + so use first bytes of "data" for next comparisons, + increasing it up to the complete data-size */ + { + register const unsigned char *p; /* position to compare from */ + size -= compare_size; - if (col) { - while (s1 < end) { - if ((ret = col[*s1] - col[*s2]) != 0) { + while (size > compare_size) { + p = data + compare_size; + if ((ret = memcmp (p, data, compare_size)) != 0) { return ret; } - s1++, s2++; + size -= compare_size; + compare_size *= 2; } - } else { - while (s1 < end) { - if ((ret = *s1 - *s2) != 0) { - return ret; - } - s1++, s2++; + if (size > 0) { + p = data + compare_size; + return memcmp (p, data, size); } } + return 0; } +/* compare up to 'size' characters in 'data' to spaces */ static int -cob_cmp_all (cob_field *f1, cob_field *f2) +compare_spaces (const unsigned char *data, size_t size) { - const unsigned char *s = COB_MODULE_PTR->collating_sequence; - unsigned char *data; - unsigned char buff[COB_MAX_DIGITS + 1]; - - if (COB_FIELD_HAVE_SIGN (f1)) { - /* drop sign for comparision, using a copy to not change - the field during comparision */ - /* CHECKME: What should be returned if f1 is negative? */ - unsigned char *real_data = f1->data; - f1->data = data = buff; - memcpy (buff, real_data, f1->size); - (void)cob_real_get_sign (f1); - f1->data = real_data; - } else { - data = f1->data; + if (size <= COB_SPACES_ALPHABETIC_BYTE_LENGTH) { + return memcmp (data, COB_SPACES_ALPHABETIC, size); } + return compare_character (data, size, + (const unsigned char *)COB_SPACES_ALPHABETIC, + COB_SPACES_ALPHABETIC_BYTE_LENGTH); +} - /* check for IF VAR = ALL "9" */ - if (f2->size == 1) { - return common_cmpc (data, f2->data[0], f1->size, s); +/* compare up to 'size' characters in 'data' to zeroes */ +static int +compare_zeroes (const unsigned char *data, size_t size) +{ + if (size <= COB_ZEROES_ALPHABETIC_BYTE_LENGTH) { + return memcmp (data, COB_ZEROES_ALPHABETIC, size); } + return compare_character (data, size, + (const unsigned char *)COB_ZEROES_ALPHABETIC, + COB_ZEROES_ALPHABETIC_BYTE_LENGTH); +} - /* check for IF VAR = ALL "AB" ... */ - { - size_t size = f1->size; - int ret; +/* compare content of field 'f1' to repeated content of 'f2' */ +static int +cob_cmp_all (cob_field *f1, cob_field *f2) +{ + const unsigned char *col = COB_MODULE_PTR->collating_sequence; + const unsigned char *data1 = COB_FIELD_DATA (f1); + const unsigned char *data2 = f2->data; + const size_t size1 = COB_FIELD_SIZE (f1); + const size_t size2 = f2->size; + /* CHECKME: What should be returned if f1 is negative? */ + /* CHECKME: Do we ever get here with f2 being numeric? */ + const int sign = COB_GET_SIGN_ADJUST (f1); + int ret = 0; - while (size >= f2->size) { - if ((ret = common_cmps (data, f2->data, f2->size, s)) != 0) { - return ret; + /* check without collation */ + if (col == NULL) { + if (size2 == 1) { + if (*data2 == ' ') { + /* check for IF VAR = [ALL] SPACE[S] */ + ret = compare_spaces (data1, size1); + } else + if (*data2 == '0') { + /* check for IF VAR = [ALL] ZERO[ES] */ + ret = compare_zeroes (data1, size1); + } else { + /* check for IF VAR = ALL '5' / HIGH-VALUE / ... */ + ret = compare_character (data1, size1, data2, 1); } - size -= f2->size; - data += f2->size; + } else + /* check for IF VAR = ALL ... / ... */ + if (size1 > size2) { + ret = compare_character (data1, size1, data2, size2); + } else { + ret = compare_character (data1, size1, data2, size1); } - if (size > 0) { - return common_cmps (data, f2->data, size, s); + } else + /* check with collation */ + if (size2 == 1) { + /* check for IF VAR = ALL "9" / IF VAR = ZERO */ + ret = common_cmpc (data1, *data2, size1, col); + } else { + /* check for IF VAR = ALL "AB" ... */ + const size_t chunk_size = size2; + size_t size_loop = size1; + while (size_loop >= chunk_size) { + if ((ret = common_cmps (data1, data2, chunk_size, col)) != 0) { + break; + } + size_loop -= chunk_size; + data1 += chunk_size; + } + if (!ret + && size1 > 0) { + ret = common_cmps (data1, data2, size_loop, col); } } - return 0; + COB_PUT_SIGN_ADJUSTED (f1, sign); + return ret; } +/* compare content of field 'f1' to content of 'f2', space padded, + using the optional collating sequence of the program */ static int cob_cmp_alnum (cob_field *f1, cob_field *f2) { - const unsigned char *s = COB_MODULE_PTR->collating_sequence; - const size_t min = (f1->size < f2->size) ? f1->size : f2->size; + const unsigned char *col = COB_MODULE_PTR->collating_sequence; + const unsigned char *data1 = COB_FIELD_DATA (f1); + const unsigned char *data2 = COB_FIELD_DATA (f2); + const size_t size1 = COB_FIELD_SIZE (f1); + const size_t size2 = COB_FIELD_SIZE (f2); + const size_t min = (size1 < size2) ? size1 : size2; int ret; - /* Compare common substring */ - if ((ret = common_cmps (f1->data, f2->data, min, s)) != 0) { - return ret; - } + if (col == NULL) { /* check without collation */ + + /* Compare common substring */ + if ((ret = memcmp (data1, data2, min)) != 0) { + return ret; + } + + /* Compare the rest (if any) with spaces */ + if (size1 > size2) { + const size_t spaces_to_test = size1 - min; + return compare_spaces (data1 + min, spaces_to_test); + } else if (size1 < size2) { + const size_t spaces_to_test = size2 - min; + return -compare_spaces (data2 + min, spaces_to_test); + } + + } else { /* check with collation */ + + /* Compare common substring */ + if ((ret = common_cmps (data1, data2, min, col)) != 0) { + return ret; + } + + /* Compare the rest (if any) with spaces */ + if (size1 > size2) { + const size_t spaces_to_test = size1 - min; + return common_cmpc (data1 + min, ' ', spaces_to_test, col); + } else if (size1 < size2) { + const size_t spaces_to_test = size2 - min; + return -common_cmpc (data2 + min, ' ', spaces_to_test, col); + } - /* Compare the rest (if any) with spaces */ - if (f1->size > f2->size) { - return common_cmpc (f1->data + min, ' ', f1->size - min, s); - } else if (f1->size < f2->size) { - return -common_cmpc (f2->data + min, ' ', f2->size - min, s); } return 0; } +/* comparision of all key fields for SORT (without explicit collation) + in records pointed to by 'data1' and 'data2' */ static int sort_compare (const void *data1, const void *data2) { @@ -1879,6 +2049,32 @@ sort_compare (const void *data1, const void *data2) cob_field f1; cob_field f2; + for (i = 0; i < sort_nkeys; ++i) { + f1 = f2 = *sort_keys[i].field; + f1.data = (unsigned char *)data1 + sort_keys[i].offset; + f2.data = (unsigned char *)data2 + sort_keys[i].offset; + if (COB_FIELD_IS_NUMERIC (&f1)) { + res = cob_numeric_cmp (&f1, &f2); + } else { + res = memcmp (f1.data, f2.data, f1.size); + } + if (res != 0) { + return (sort_keys[i].tf_ascending == COB_ASCENDING) ? res : -res; + } + } + return 0; +} + +/* comparision of all key fields for SORT (with explicit collation) + in records pointed to by 'data1' and 'data2' */ +static int +sort_compare_collate (const void *data1, const void *data2) +{ + size_t i; + int res; + cob_field f1; + cob_field f2; + for (i = 0; i < sort_nkeys; ++i) { f1 = f2 = *sort_keys[i].field; f1.data = (unsigned char *)data1 + sort_keys[i].offset; @@ -2008,22 +2204,17 @@ cob_new_trace_file (void) int cob_check_env_true (char * s) { - if (s) { - if (strlen (s) == 1 && (*s == 'Y' || *s == 'y' || *s == '1')) return 1; - if (strcasecmp (s, "YES") == 0 || strcasecmp (s, "ON") == 0 || - strcasecmp (s, "TRUE") == 0) { - return 1; - } - } - return 0; + return s && ((strlen (s) == 1 && (*s == 'Y' || *s == 'y' || *s == '1')) + || strcasecmp (s, "YES") == 0 || strcasecmp (s, "ON") == 0 + || strcasecmp (s, "TRUE") == 0); } int cob_check_env_false (char * s) { return s && ((strlen (s) == 1 && (*s == 'N' || *s == 'n' || *s == '0')) - || (strcasecmp (s, "NO") == 0 || strcasecmp (s, "NONE") == 0 - || strcasecmp (s, "OFF") == 0 || strcasecmp (s, "FALSE") == 0)); + || strcasecmp (s, "NO") == 0 || strcasecmp (s, "NONE") == 0 + || strcasecmp (s, "OFF") == 0 || strcasecmp (s, "FALSE") == 0); } static char file_path_name [COB_FILE_BUFF] = ""; @@ -2595,7 +2786,7 @@ cob_get_last_exception_name (void) } for (n = EXCEPTION_TAB_SIZE - 1; n != 0; --n) { if ((last_exception_code & cob_exception_tab_code[n]) - == cob_exception_tab_code[n]) { + == cob_exception_tab_code[n]) { return cob_exception_tab_name[n]; } } @@ -2676,7 +2867,6 @@ cob_set_exception (const int id) } #endif } - /* if no current module is available fall-through */ } else { cobglobptr->cob_got_exception = 0; #if 0 /* consider addition for 4.x */ @@ -3142,50 +3332,6 @@ cob_get_pointer (const void *srcptr) return (cob_u8_ptr)tmptr; } -/* stores the field's rtrimmed string content into the given buffer - with maxlength */ -void -cob_field_to_string (const cob_field *f, void *str, const size_t maxsize) -{ - register unsigned char *end, *data, *s; - - if (f == NULL) { - snprintf (str, maxsize, "%s", ("NULL field")); - return; - } - - if (f->size == 0) { - return; - } - data = f->data; - /* check if field has data assigned (may be a BASED / LINKAGE item) */ - if (data == NULL) { - snprintf (str, maxsize, "%s", ("field with NULL address")); - return; - } - end = data + f->size - 1; - while (end > data) { - if (*end != ' ' && *end) { - break; - } - end--; - } - s = (unsigned char *)str; - if (*end == ' ' || *end == 0) { - *s = 0; - return; - } - - /* note: the specified max does not contain the low-value */ - if ((size_t)(end - data) > maxsize) { - end = data + maxsize; - } - while (data <= end) { - *s++ = *data++; - } - *s = 0; -} - static void call_exit_handlers_and_terminate (void) { @@ -3666,31 +3812,27 @@ cob_parameter_check (const char *func_name, const int num_arguments) void cob_correct_numeric (cob_field *f) { - unsigned char *p; - unsigned char *data; - size_t size; - size_t i; + register unsigned char *p = f->data; + unsigned char *end = p + f->size; + unsigned char *c; if (!COB_FIELD_IS_NUMDISP (f)) { return; } - size = f->size; - data = f->data; + if (COB_FIELD_HAVE_SIGN (f)) { /* Adjust for sign byte */ - size--; if (COB_FIELD_SIGN_LEADING (f)) { - p = f->data; - data = p + 1; + c = p++; } else { - p = f->data + f->size - 1; + c = --end; } if (COB_FIELD_SIGN_SEPARATE (f)) { - if (*p != '+' && *p != '-') { - *p = '+'; + if (*c != '+' && *c != '-') { + *c = '+'; } } else if (COB_MODULE_PTR->ebcdic_sign) { - switch (*p) { + switch (*c) { case '{': case 'A': case 'B': @@ -3713,56 +3855,40 @@ cob_correct_numeric (cob_field *f) case 'R': break; case '0': - *p = '{'; + *c = '{'; break; case '1': - *p = 'A'; - break; case '2': - *p = 'B'; - break; case '3': - *p = 'C'; - break; case '4': - *p = 'D'; - break; case '5': - *p = 'E'; - break; case '6': - *p = 'F'; - break; case '7': - *p = 'G'; - break; case '8': - *p = 'H'; - break; case '9': - *p = 'I'; + *c = 'A' + (*c - '1'); break; case 0: case ' ': - *p = '{'; + *c = '{'; break; default: break; } } else { - if (!*p || *p == ' ') { - *p = '0'; + if (!*c || *c == ' ') { + *c = '0'; } } } else { - p = f->data + f->size - 1; + c = end - 1; if (COB_MODULE_PTR->ebcdic_sign) { - switch (*p) { + switch (*c) { case 0: case ' ': case '{': case '}': - *p = '0'; + *c = '0'; break; case 'A': case 'B': @@ -3773,7 +3899,7 @@ cob_correct_numeric (cob_field *f) case 'G': case 'H': case 'I': - *p = '1' + (*p - 'A'); + *c = '1' + (*c - 'A'); break; case 'J': case 'K': @@ -3784,51 +3910,35 @@ cob_correct_numeric (cob_field *f) case 'P': case 'Q': case 'R': - *p = '1' + (*p - 'J'); + *c = '1' + (*c - 'J'); break; default: break; } } else { - switch (*p) { + switch (*c) { case 0: case ' ': case 'p': - *p = '0'; + *c = '0'; break; case 'q': - *p = '1'; - break; case 'r': - *p = '2'; - break; case 's': - *p = '3'; - break; case 't': - *p = '4'; - break; case 'u': - *p = '5'; - break; case 'v': - *p = '6'; - break; case 'w': - *p = '7'; - break; case 'x': - *p = '8'; - break; case 'y': - *p = '9'; + *c = *c - 'p'; break; default: break; } } } - for (i = 0, p = data; i < size; ++i, ++p) { + while (p < end) { switch (*p) { case '0': case '1': @@ -3847,104 +3957,84 @@ cob_correct_numeric (cob_field *f) break; default: if ((*p & 0x0F) <= 9) { - *p = (*p & 0x0F) + '0'; + *p = COB_I2D (*p & 0x0F); } break; } + p++; } } static int cob_check_numdisp (const cob_field *f) { - unsigned char *p; - unsigned char *data; - size_t size; - size_t i; + register const unsigned char *p = f->data; + const unsigned char *end = p + f->size; - size = f->size; - data = f->data; if (COB_FIELD_HAVE_SIGN (f)) { /* Adjust for sign byte */ - size--; + unsigned char c; if (COB_FIELD_SIGN_LEADING (f)) { - p = f->data; - data = p + 1; + c = *p++; } else { - p = f->data + f->size - 1; + c = *(--end); } if (COB_FIELD_SIGN_SEPARATE (f)) { - if (*p != '+' && *p != '-') { - return 0; - } - } else if (COB_MODULE_PTR->ebcdic_sign) { - switch (*p) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case '{': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case '}': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - break; - default: + if (c != '+' && c != '-') { return 0; } - } else { - switch (*p) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - break; - default: - return 0; + } else if (IS_INVALID_DIGIT_DATA (c)) { + if (COB_MODULE_PTR->ebcdic_sign) { + switch (c) { + case '{': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case '}': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + break; + default: + return 0; + } + } else { + switch (c) { + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + break; + default: + return 0; + } } } } - for (i = 0; i < size; ++i) { - if (!isdigit (data[i])) { + + while (p < end) { + if (IS_INVALID_DIGIT_DATA (*p)) { return 0; } + p++; } return 1; } @@ -3960,11 +4050,18 @@ locate_sign (cob_field *f) return f->data + f->size - 1; } -/* get sign from DISPLAY/PACKED fields - returns one of: 1 = positive (non-negative), -1 = negative, +/* get sign from DISPLAY/PACKED field 'f'; + + if 'adjust_ebcdic' is set then original DISPLAY data is "unpunched" + for `ebcdic_sign` and return adjusted; + that allows conversion without handling that afterwards + + returns one of: 1 = positive (non-negative); -1 = negative; + 2 = positive (non-negative), adjusted; + -2 = negative, adjusted; 0 = neither DISPLAY nor PACKED */ int -cob_real_get_sign (cob_field *f) +cob_real_get_sign (cob_field *f, const int adjust_ebcdic) { unsigned char *p; @@ -3976,19 +4073,33 @@ cob_real_get_sign (cob_field *f) if (COB_FIELD_SIGN_SEPARATE (f)) { return (*p == '-') ? -1 : 1; } - if (*p >= (unsigned char)'0' && *p <= (unsigned char)'9') { + if (IS_VALID_DIGIT_DATA (*p)) { return 1; } if (*p == ' ') { #if 0 /* RXWRXW - Space sign */ - *p = (unsigned char)'0'; + *p = '0'; #endif return 1; } - if (COB_MODULE_PTR->ebcdic_sign) { - return cob_get_sign_ebcdic (p); + if (adjust_ebcdic) { +#ifdef COB_EBCDIC_MACHINE + if (COB_MODULE_PTR->ebcdic_sign) { + return cob_get_sign_ebcdic (p); + } + return cob_get_sign_ascii (p) < 0 ? -2 : 2; +#else + if (COB_MODULE_PTR->ebcdic_sign) { + return cob_get_sign_ebcdic (p) < 0 ? -2 : 2; + } + return ((*p & 0xF0) == 0x70) ? -1 : 1; +#endif + } else { + if (COB_MODULE_PTR->ebcdic_sign) { + return cob_get_sign_ebcdic (p); + } + return cob_get_sign_ascii (p); } - return cob_get_sign_ascii (p); case COB_TYPE_NUMERIC_PACKED: if (COB_FIELD_NO_SIGN_NIBBLE (f)) { return 1; @@ -4010,7 +4121,7 @@ cob_real_put_sign (cob_field *f, const int sign) /* Note: we only locate the sign if needed, as the common case will be "nothing to do" */ if (COB_FIELD_SIGN_SEPARATE (f)) { - const unsigned char c = (sign == -1) ? (cob_u8_t)'-' : (cob_u8_t)'+'; + const unsigned char c = (sign == -1) ? '-' : '+'; p = locate_sign (f); if (*p != c) { *p = c; @@ -4081,7 +4192,7 @@ cob_cmp (cob_field *f1, cob_field *f2) const int f1_is_numeric = f1_type & COB_TYPE_NUMERIC; const int f2_is_numeric = f2_type & COB_TYPE_NUMERIC; - /* both numeric -> direct compare */ + /* both numeric -> direct numeric compare */ if (f1_is_numeric && f2_is_numeric) { return cob_numeric_cmp (f1, f2); } @@ -4117,17 +4228,16 @@ cob_cmp (cob_field *f1, cob_field *f2) only in test "Alphanumeric and binary numeric" */ if (f1_is_numeric || f2_is_numeric) { - /* CHECKME: What should be returned if field is negative? - We suspicously change -12 to 12 here... */ + /* Note: the standard explicit defines how to handle that: + intermediate MOVE to a NUMERIC_DISPLAY with same amount + of digits (= drop sign and implied decimal point), then + compare that */ cob_field field; cob_field_attr attr; unsigned char buff[COB_MAX_DIGITS + 10]; - /* CHECKME: may need to abort if we ever get here with float data */ - - /* FIXME: must be converted to COB_TYPE_NUMERIC_EDITED with an - internal PIC of COB_FIELD_DIGITS '9's and leading sign, - otherwise we'll fail as soon as we enable COB_MAX_BINARY */ + /* note: the standard explicit forbits floating-point numeric + in this scenario */ if (f1_is_numeric && f1_type != COB_TYPE_NUMERIC_DISPLAY) { COB_FIELD_INIT (COB_FIELD_DIGITS (f1), buff, &attr); @@ -4150,23 +4260,14 @@ cob_cmp (cob_field *f1, cob_field *f2) if (COB_FIELD_HAVE_SIGN (f1)) { /* Note: if field is numeric then it is always USAGE DISPLAY here */ - - if (f1 != &field) { - /* drop sign for comparision, using a copy to not change - the field during comparision */ - unsigned char buff2[COB_MAX_DIGITS + 10]; - const size_t size = f1->size; - int ret; - unsigned char *real_data = f1->data; - memcpy (buff2, real_data, size); - f1->data = buff2; - (void)cob_real_get_sign (f1); - ret = cob_cmp_alnum (f1, f2); - f1->data = real_data; + if (f1 != &field) { + const int sign = COB_GET_SIGN (f1); + int ret = cob_cmp_alnum (f1, f2); + COB_PUT_SIGN (f1, sign); return ret; } else { /* we operate on a buffer already, just go on */ - (void)cob_real_get_sign (f1); + (void)cob_real_get_sign (f1, 0); return cob_cmp_alnum (f1, f2); } } @@ -4174,23 +4275,14 @@ cob_cmp (cob_field *f1, cob_field *f2) if (COB_FIELD_HAVE_SIGN (f2)) { /* Note: if field is numeric then it is always USAGE DISPLAY here */ - if (f2 != &field) { - /* drop sign for comparision, using a copy to not change - the field during comparision */ - unsigned char buff2[COB_MAX_DIGITS + 10]; - const size_t size = f2->size; - int ret; - unsigned char *real_data = f2->data; - memcpy (buff2, real_data, size); - f2->data = buff2; - (void)cob_real_get_sign (f2); - ret = cob_cmp_alnum (f1, f2); - f2->data = real_data; + const int sign = COB_GET_SIGN (f2); + int ret = cob_cmp_alnum (f1, f2); + COB_PUT_SIGN (f2, sign); return ret; } else { /* we operate on a buffer already, just go on */ - (void)cob_real_get_sign (f2); + (void)cob_real_get_sign (f2, 0); return cob_cmp_alnum (f1, f2); } } @@ -4237,42 +4329,45 @@ cob_is_numeric (const cob_field *f) } case COB_TYPE_NUMERIC_PACKED: { - size_t i; - int sign; - /* Check digits */ - for (i = 0; i < f->size - 1; ++i) { - if ((f->data[i] & 0xF0) > 0x90 || - (f->data[i] & 0x0F) > 0x09) { + register const unsigned char *p = f->data; + const unsigned char *end = p + f->size - 1; + + /* Check sign */ + { + const char sign = *end & 0x0F; + if (COB_FIELD_NO_SIGN_NIBBLE (f)) { + /* COMP-6 - Check last nibble */ + if (sign > 0x09) { + return 0; + } + } else if (COB_FIELD_HAVE_SIGN (f)) { + if (COB_MODULE_PTR->flag_host_sign + && sign == 0x0F) { + /* all fine, go on */ + } else + if (sign != 0x0C + && sign != 0x0D) { + return 0; + } + } else if (sign != 0x0F) { return 0; } } + /* Check high nibble of last byte */ - if ((f->data[i] & 0xF0) > 0x90) { + if ((*end & 0xF0) > 0x90) { return 0; } - if (COB_FIELD_NO_SIGN_NIBBLE (f)) { - /* COMP-6 - Check last nibble */ - if ((f->data[i] & 0x0F) > 0x09) { + /* Check digits */ + while (p < end) { + if (IS_INVALID_BCD_DATA (*p)) { return 0; } - return 1; + p++; } - /* Check sign */ - sign = f->data[i] & 0x0F; - if (COB_FIELD_HAVE_SIGN (f)) { - if (sign == 0x0C || sign == 0x0D) { - return 1; - } - if (COB_MODULE_PTR->flag_host_sign && - sign == 0x0F) { - return 1; - } - } else if (sign == 0x0F) { - return 1; - } - return 0; + return 1; } case COB_TYPE_NUMERIC_DISPLAY: return cob_check_numdisp (f); @@ -4290,11 +4385,14 @@ cob_is_numeric (const cob_field *f) #endif default: { - size_t i; - for (i = 0; i < f->size; ++i) { - if (!isdigit (f->data[i])) { + register const unsigned char *p = f->data; + const unsigned char *end = p + f->size; + + while (p < end) { + if (IS_INVALID_DIGIT_DATA (*p)) { return 0; } + p++; } return 1; } @@ -4304,10 +4402,14 @@ cob_is_numeric (const cob_field *f) int cob_is_alpha (const cob_field *f) { - size_t i; + register const unsigned char *p = f->data; + const unsigned char *end = p + f->size; - for (i = 0; i < f->size; ++i) { - if (!isalpha (f->data[i]) && f->data[i] != (unsigned char)' ') { + while (p < end) { + if (*p == (unsigned char)' ' + || isalpha (*p)) { + p++; + } else { return 0; } } @@ -4317,10 +4419,14 @@ cob_is_alpha (const cob_field *f) int cob_is_upper (const cob_field *f) { - size_t i; + register const unsigned char *p = f->data; + const unsigned char *end = p + f->size; - for (i = 0; i < f->size; ++i) { - if (!isupper (f->data[i]) && f->data[i] != (unsigned char)' ') { + while (p < end) { + if (*p == (unsigned char)' ' + || isupper (*p)) { + p++; + } else { return 0; } } @@ -4330,10 +4436,14 @@ cob_is_upper (const cob_field *f) int cob_is_lower (const cob_field *f) { - size_t i; + register const unsigned char *p = f->data; + const unsigned char *end = p + f->size; - for (i = 0; i < f->size; ++i) { - if (!islower (f->data[i]) && f->data[i] != (unsigned char)' ') { + while (p < end) { + if (*p == (unsigned char)' ' + || islower (*p)) { + p++; + } else { return 0; } } @@ -4367,7 +4477,11 @@ cob_table_sort_init_key (cob_field *field, const int flag, void cob_table_sort (cob_field *f, const int n) { - qsort (f->data, (size_t) n, f->size, sort_compare); + if (sort_collate) { + qsort (f->data, (size_t) n, f->size, sort_compare_collate); + } else { + qsort (f->data, (size_t) n, f->size, sort_compare); + } cob_free (sort_keys); } @@ -4425,6 +4539,12 @@ explain_field_type (const cob_field *f) case COB_TYPE_NUMERIC_BINARY: return "BINARY"; case COB_TYPE_NUMERIC_PACKED: + if (COB_FIELD_NO_SIGN_NIBBLE (f)) { + return "COMP-6"; + } + if (!COB_FIELD_HAVE_SIGN (f)) { + return "PACKED-DECIMAL (unsigned)"; + } return "PACKED-DECIMAL"; case COB_TYPE_NUMERIC_FLOAT: return "FLOAT"; @@ -4466,28 +4586,27 @@ explain_field_type (const cob_field *f) void cob_check_numeric (const cob_field *f, const char *name) { - unsigned char *data; - char *p; - char *buff; - size_t i; - if (!cob_is_numeric (f)) { + register unsigned char *data = f->data; + unsigned char *end = data + f->size; + char *p; + char *buff; + cob_set_exception (COB_EC_DATA_INCOMPATIBLE); buff = cob_fast_malloc ((size_t)COB_SMALL_BUFF); p = buff; - data = f->data; if (COB_FIELD_IS_NUMDISP(f) || COB_FIELD_IS_ANY_ALNUM(f)) { - for (i = 0; i < f->size; ++i) { - if (isprint (data[i])) { - *p++ = data[i]; + while (data < end) { + if (isprint (*data)) { + *p++ = *data++; } else { - p += sprintf (p, "\\%03o", data[i]); + p += sprintf (p, "\\%03o", *data++); } } } else { p += sprintf (p, "0x"); - for (i = 0; i < f->size; ++i) { - p += sprintf (p, "%02x", data[i]); + while (data < end) { + p += sprintf (p, "%02x", *data++); } } *p = '\0'; @@ -4705,11 +4824,10 @@ static set_cob_time_from_localtime (time_t curtime, time_t utctime, lcltime, difftime; #endif -#ifndef TIME_T_IS_NON_ARITHMETIC static time_t last_time = 0; static struct cob_time last_cobtime; - /* FIXME: on reseting appropriate locale set last_time_no_sec = 0 */ + /* FIXME: on setting related locale set last_time = 0 */ if (curtime == last_time) { memcpy (cb_time, &last_cobtime, sizeof (struct cob_time)); return; @@ -4742,7 +4860,6 @@ static set_cob_time_from_localtime (time_t curtime, } } last_time = curtime; -#endif tmptr = localtime (&curtime); @@ -4797,10 +4914,8 @@ static set_cob_time_from_localtime (time_t curtime, /* LCOV_EXCL_STOP */ #endif -#ifndef TIME_T_IS_NON_ARITHMETIC /* keep backup for next call */ memcpy (&last_cobtime, cb_time, sizeof (struct cob_time)); -#endif } #if defined (_WIN32) /* cygwin does not define _WIN32 */ @@ -4967,16 +5082,14 @@ cob_get_current_datetime (const enum cob_datetime_res res) } int -cob_set_date_from_epoch (struct cob_time *cb_time, const char *config) +cob_set_date_from_epoch (struct cob_time *cb_time, const unsigned char *p) { struct tm *tmptr; time_t t = 0; long long seconds = 0; - unsigned char *p = (unsigned char *)config; - while (isdigit (*p)) { - seconds = seconds * 10 + *p - '0'; - p++; + while (IS_VALID_DIGIT_DATA (*p)) { + seconds = seconds * 10 + COB_D2I (*p++); } if (*p != 0 || seconds > 253402300799) { /* The value (as a unix timestamp) corresponds to date @@ -5023,30 +5136,27 @@ check_current_date () { int yr, mm, dd, hh, mi, ss, ns; int offset = 9999; - int i, j, ret; + int i, ret; time_t t; struct tm *tmptr; char iso_timezone[7] = { 0 }; - char nanoseconds[10]; + unsigned char *p = (unsigned char*)cobsetptr->cob_date; - if (cobsetptr == NULL - || cobsetptr->cob_date == NULL) { + if (p == NULL) { return; } - j = 0; - /* skip quotes and space-characters */ - while (cobsetptr->cob_date[j] == '\'' - || cobsetptr->cob_date[j] == '"' - || isspace((unsigned char)cobsetptr->cob_date[j])) { - j++; + while (*p == '\'' + || *p == '"' + || isspace (*p)) { + p++; } /* extract epoch, if specified */ - if (cobsetptr->cob_date[j] == '@') { + if (*p == '@') { /* @sssssssss seconds since epoch */ - ret = cob_set_date_from_epoch (&cobsetptr->cob_time_constant, cobsetptr->cob_date + j + 1); + ret = cob_set_date_from_epoch (&cobsetptr->cob_time_constant, ++p); if (ret) { cob_runtime_warning (_("COB_CURRENT_DATE '%s' is invalid"), cobsetptr->cob_date); } @@ -5057,23 +5167,22 @@ check_current_date () ret = 0; /* extract date */ - if (cobsetptr->cob_date[j] != 0) { + if (*p) { yr = 0; - for (i = 0; cobsetptr->cob_date[j] != 0; j++) { - if (isdigit ((unsigned char)cobsetptr->cob_date[j])) { - yr = yr * 10 + COB_D2I (cobsetptr->cob_date[j]); - } else { + for (i = 0; *p; p++) { + if (IS_INVALID_DIGIT_DATA (*p)) { break; } + yr = yr * 10 + COB_D2I (*p); if (++i == 4) { - j++; + p++; break; } } if (i != 2 && i != 4) { /* possible template with partial system lookup */ - if (cobsetptr->cob_date[j] == 'Y') { - while (cobsetptr->cob_date[j] == 'Y') j++; + if (*p == 'Y') { + while (*p == 'Y') p++; } else { ret = 1; } @@ -5081,28 +5190,27 @@ check_current_date () } else if (yr < 100) { yr += 2000; } - if (cobsetptr->cob_date[j] == '/' - || cobsetptr->cob_date[j] == '-') { - j++; + if (*p == '/' + || *p == '-') { + p++; } } - if (cobsetptr->cob_date[j] != 0) { + if (*p) { mm = 0; - for (i = 0; cobsetptr->cob_date[j] != 0; j++) { - if (isdigit ((unsigned char)cobsetptr->cob_date[j])) { - mm = mm * 10 + COB_D2I (cobsetptr->cob_date[j]); - } else { + for (i = 0; *p; p++) { + if (IS_INVALID_DIGIT_DATA (*p)) { break; } + mm = mm * 10 + COB_D2I (*p); if (++i == 2) { - j++; + p++; break; } } if (i != 2) { /* possible template with partial system lookup */ - if (cobsetptr->cob_date[j] == 'M') { - while (cobsetptr->cob_date[j] == 'M') j++; + if (*p == 'M') { + while (*p == 'M') p++; } else { ret = 1; } @@ -5110,28 +5218,27 @@ check_current_date () } else if (mm < 1 || mm > 12) { ret = 1; } - if (cobsetptr->cob_date[j] == '/' - || cobsetptr->cob_date[j] == '-') { - j++; + if (*p == '/' + || *p == '-') { + p++; } } - if (cobsetptr->cob_date[j] != 0) { + if (*p) { dd = 0; - for (i = 0; cobsetptr->cob_date[j] != 0; j++) { - if (isdigit ((unsigned char)cobsetptr->cob_date[j])) { - dd = dd * 10 + COB_D2I (cobsetptr->cob_date[j]); - } else { + for (i = 0; *p; p++) { + if (IS_INVALID_DIGIT_DATA (*p)) { break; } + dd = dd * 10 + COB_D2I (*p); if (++i == 2) { - j++; + p++; break; } } if (i != 2) { /* possible template with partial system lookup */ - if (cobsetptr->cob_date[j] == 'D') { - while (cobsetptr->cob_date[j] == 'D') j++; + if (*p == 'D') { + while (*p == 'D') p++; } else { ret = 1; } @@ -5142,25 +5249,24 @@ check_current_date () } /* extract time */ - if (cobsetptr->cob_date[j] != 0) { + if (*p) { hh = 0; - while (isspace ((unsigned char)cobsetptr->cob_date[j])) j++; - for (i = 0; cobsetptr->cob_date[j] != 0; j++) { - if (isdigit ((unsigned char)cobsetptr->cob_date[j])) { - hh = hh * 10 + COB_D2I (cobsetptr->cob_date[j]); - } else { + while (isspace (*p)) p++; + for (i = 0; *p; p++) { + if (IS_INVALID_DIGIT_DATA (*p)) { break; } + hh = hh * 10 + COB_D2I (*p); if (++i == 2) { - j++; + p++; break; } } if (i != 2) { /* possible template with partial system lookup */ - if (cobsetptr->cob_date[j] == 'H') { - while (cobsetptr->cob_date[j] == 'H') j++; + if (*p == 'H') { + while (*p == 'H') p++; } else { ret = 1; } @@ -5168,27 +5274,26 @@ check_current_date () } else if (hh > 23) { ret = 1; } - if (cobsetptr->cob_date[j] == ':' - || cobsetptr->cob_date[j] == '-') - j++; + if (*p == ':' + || *p == '-') + p++; } - if (cobsetptr->cob_date[j] != 0) { + if (*p) { mi = 0; - for (i = 0; cobsetptr->cob_date[j] != 0; j++) { - if (isdigit ((unsigned char)cobsetptr->cob_date[j])) { - mi = mi * 10 + COB_D2I (cobsetptr->cob_date[j]); - } else { + for (i = 0; *p; p++) { + if (IS_INVALID_DIGIT_DATA (*p)) { break; } + mi = mi * 10 + COB_D2I (*p); if (++i == 2) { - j++; + p++; break; } } if (i != 2) { /* possible template with partial system lookup */ - if (cobsetptr->cob_date[j] == 'M') { - while (cobsetptr->cob_date[j] == 'M') j++; + if (*p == 'M') { + while (*p == 'M') p++; } else { ret = 1; } @@ -5196,32 +5301,31 @@ check_current_date () } else if (mi > 59) { ret = 1; } - if (cobsetptr->cob_date[j] == ':' - || cobsetptr->cob_date[j] == '-') { - j++; + if (*p == ':' + || *p == '-') { + p++; } } - if (cobsetptr->cob_date[j] != 0 - && cobsetptr->cob_date[j] != 'Z' - && cobsetptr->cob_date[j] != '+' - && cobsetptr->cob_date[j] != '-') { + if (*p != 0 + && *p != 'Z' + && *p != '+' + && *p != '-') { ss = 0; - for (i = 0; cobsetptr->cob_date[j] != 0; j++) { - if (isdigit ((unsigned char)cobsetptr->cob_date[j])) { - ss = ss * 10 + COB_D2I (cobsetptr->cob_date[j]); - } else { + for (i = 0; *p != 0; p++) { + if (IS_INVALID_DIGIT_DATA (*p)) { break; } + ss = ss * 10 + COB_D2I (*p); if (++i == 2) { - j++; + p++; break; } } if (i != 2) { /* possible template with partial system lookup */ - if (cobsetptr->cob_date[j] == 'S') { - while (cobsetptr->cob_date[j] == 'S') j++; + if (*p == 'S') { + while (*p == 'S') p++; } else { ret = 1; } @@ -5233,58 +5337,57 @@ check_current_date () } /* extract nanoseconds */ - if (cobsetptr->cob_date[j] != 0 - && cobsetptr->cob_date[j] != 'Z' - && cobsetptr->cob_date[j] != '+' - && cobsetptr->cob_date[j] != '-') { + if (*p != 0 + && *p != 'Z' + && *p != '+' + && *p != '-') { ns = 0; - if (cobsetptr->cob_date[j] == '.' - || cobsetptr->cob_date[j] == ':') { - j++; - } - strcpy (nanoseconds, "000000000"); - for (i=0; cobsetptr->cob_date[j] != 0; j++) { - if (isdigit ((unsigned char)cobsetptr->cob_date[j])) { - nanoseconds[i] = cobsetptr->cob_date[j]; - } else { + if (*p == '.' + || *p == ':') { + p++; + } + for (i = 0; *p; p++) { + if (IS_INVALID_DIGIT_DATA (*p)) { break; } + ns = ns * 10 + COB_D2I (*p); if (++i == 9) { - j++; + p++; break; } } - ns = atoi(nanoseconds); } /* extract UTC offset */ - if (cobsetptr->cob_date[j] == 'Z') { + if (*p == 'Z') { offset = 0; iso_timezone[0] = 'Z'; - } else if (cobsetptr->cob_date[j] == '+' - || cobsetptr->cob_date[j] == '-') { - int len = snprintf (&iso_timezone[0], 7, "%s", cobsetptr->cob_date + j); + } else + if (*p == '+' + || *p == '-') { + /* we operate on a buffer here to drop the included ":" */ + int len = snprintf (&iso_timezone[0], 7, "%s", p); if (len == 3) { memcpy (iso_timezone + 3, "00", 3); } else if (len >= 5 && iso_timezone[3] == ':') { - snprintf (&iso_timezone[3], 3, "%s", cobsetptr->cob_date + j + 4); + snprintf (&iso_timezone[3], 3, "%s", p + 4); len--; } if (len > 5) { ret = 1; } - for (i=1; i < 5 && iso_timezone[i] != 0; i++) { - if (!isdigit ((unsigned char)iso_timezone[i])) { + for (i = 1; i < 5 && iso_timezone[i] != 0; i++) { + if (IS_INVALID_DIGIT_DATA (iso_timezone[i])) { break; } } i--; if (i == 4) { offset = COB_D2I (iso_timezone[1]) * 60 * 10 - + COB_D2I (iso_timezone[2]) * 60 - + COB_D2I (iso_timezone[3]) * 10 - + COB_D2I (iso_timezone[4]); + + COB_D2I (iso_timezone[2]) * 60 + + COB_D2I (iso_timezone[3]) * 10 + + COB_D2I (iso_timezone[4]); if (iso_timezone[0] == '-') { offset *= -1; } @@ -5397,7 +5500,7 @@ cob_accept_date (cob_field *f) + (time.year % 100) * 10000; cob_field field; cob_field_attr attr; - const size_t digits = 6; + const unsigned short digits = 6; COB_FIELD_INIT (sizeof (cob_u32_t), (unsigned char *)&val, &attr); COB_ATTR_INIT (COB_TYPE_NUMERIC_BINARY, digits, 0, 0, NULL); @@ -5419,7 +5522,7 @@ cob_accept_date_yyyymmdd (cob_field *f) + time.year * 10000; cob_field field; cob_field_attr attr; - const size_t digits = 8; + const unsigned short digits = 8; COB_FIELD_INIT (sizeof (cob_u32_t), (unsigned char *)&val, &attr); COB_ATTR_INIT (COB_TYPE_NUMERIC_BINARY, digits, 0, 0, NULL); @@ -5439,7 +5542,7 @@ cob_accept_day (cob_field *f) const cob_u32_t val = time.day_of_year + (time.year % 100) * 1000; cob_field field; cob_field_attr attr; - const size_t digits = 5; + const unsigned short digits = 5; COB_FIELD_INIT (sizeof (cob_u32_t), (unsigned char *)&val, &attr); COB_ATTR_INIT (COB_TYPE_NUMERIC_BINARY, digits, 0, 0, NULL); @@ -5459,7 +5562,7 @@ cob_accept_day_yyyyddd (cob_field *f) const cob_u32_t val = time.day_of_year + time.year * 1000; cob_field field; cob_field_attr attr; - const size_t digits = 7; + const unsigned short digits = 7; COB_FIELD_INIT (sizeof (cob_u32_t), (unsigned char *)&val, &attr); COB_ATTR_INIT (COB_TYPE_NUMERIC_BINARY, digits, 0, 0, NULL); @@ -5477,7 +5580,7 @@ cob_accept_day_of_week (cob_field *f) { const struct cob_time time = cob_get_current_datetime (DTR_DATE); const unsigned char day = (unsigned char)(time.day_of_week + '0'); - const size_t digits = 1; + const unsigned short digits = 1; cob_move_intermediate (f, &day, digits); } @@ -5494,7 +5597,7 @@ cob_accept_time (cob_field *f) + time.hour * 1000000; cob_field field; cob_field_attr attr; - const size_t digits = 8; + const unsigned short digits = 8; COB_FIELD_INIT (sizeof (cob_u32_t), (unsigned char *)&val, &attr); COB_ATTR_INIT (COB_TYPE_NUMERIC_BINARY, digits, 0, 0, NULL); @@ -5517,7 +5620,7 @@ cob_accept_microsecond_time (cob_field *f) + (cob_u64_t)time.hour * 10000000000; cob_field field; cob_field_attr attr; - const size_t digits = 12; + const unsigned short digits = 12; COB_FIELD_INIT (sizeof (cob_u64_t), (unsigned char *)&val, &attr); COB_ATTR_INIT (COB_TYPE_NUMERIC_BINARY, digits, 0, 0, NULL); @@ -5591,7 +5694,7 @@ cob_display_arg_number (cob_field *f) int n; cob_field field; cob_field_attr attr; - const size_t digits = 9; + const unsigned short digits = 9; COB_FIELD_INIT (4, (unsigned char *)&n, &attr); COB_ATTR_INIT (COB_TYPE_NUMERIC_BINARY, digits, 0, 0, NULL); @@ -5609,7 +5712,7 @@ cob_accept_arg_number (cob_field *f) const cob_u32_t n = cob_argc - 1; cob_field field; cob_field_attr attr; - const size_t digits = 9; + const unsigned short digits = 9; COB_FIELD_INIT (sizeof (cob_u32_t), (unsigned char *)&n, &attr); COB_ATTR_INIT (COB_TYPE_NUMERIC_BINARY, digits, 0, 0, NULL); @@ -5719,7 +5822,7 @@ cob_putenv (char *name) void cob_display_environment (const cob_field *f) { - size_t i; + int ret; if (cob_local_env_size < f->size) { cob_local_env_size = f->size; @@ -5728,9 +5831,13 @@ cob_display_environment (const cob_field *f) } cob_local_env = cob_malloc (cob_local_env_size + 1U); } - cob_field_to_string (f, cob_local_env, cob_local_env_size); + ret = cob_field_to_string (f, cob_local_env, cob_local_env_size, CCM_NONE); + if (ret < 0) { + return; + } if (cobsetptr->cob_env_mangle) { - const size_t len = strlen (cob_local_env); + const size_t len = ret; + size_t i; for (i = 0; i < len; ++i) { if (!isalnum ((int)cob_local_env[i])) { cob_local_env[i] = '_'; @@ -5739,24 +5846,27 @@ cob_display_environment (const cob_field *f) } } +/* DISPLAY ... UPON ENVIRONMENT VALUE */ void cob_display_env_value (const cob_field *f) { - char *env2; int ret; - if (!cob_local_env) { + if (!cob_local_env + || !cob_local_env[0]) { cob_set_exception (COB_EC_IMP_DISPLAY); return; } - if (!*cob_local_env) { - cob_set_exception (COB_EC_IMP_DISPLAY); - return; + { + char buff[COB_MEDIUM_BUFF]; + int flen = cob_field_to_string (f, buff, + COB_MEDIUM_MAX, CCM_NONE); + if (flen < 0) { + cob_set_exception (COB_EC_IMP_DISPLAY); + return; + } + ret = cob_setenv (cob_local_env, buff, 1); } - env2 = cob_malloc (f->size + 1U); - cob_field_to_string (f, env2, f->size); - ret = cob_setenv (cob_local_env, env2, 1); - cob_free (env2); if (ret != 0) { cob_set_exception (COB_EC_IMP_DISPLAY); return; @@ -5775,32 +5885,37 @@ cob_set_environment (const cob_field *f1, const cob_field *f2) void cob_get_environment (const cob_field *envname, cob_field *envval) { - const char *p; - char *buff; - size_t size; + char buff[COB_MEDIUM_BUFF]; + char *p; + int flen; if (envname->size == 0 || envval->size == 0) { cob_set_exception (COB_EC_IMP_ACCEPT); return; } - buff = cob_malloc (envname->size + 1U); - cob_field_to_string (envname, buff, envname->size); + flen = cob_field_to_string (envname, buff, + COB_MEDIUM_MAX, CCM_NONE); + if (flen < 1) { + cob_set_exception (COB_EC_IMP_ACCEPT); + return; + } + if (cobsetptr->cob_env_mangle) { - const size_t len = strlen (buff); - for (size = 0; size < len; ++size) { - if (!isalnum ((int)buff[size])) { - buff[size] = '_'; + const char *p_end = buff + flen; + for (p = buff; p < p_end; ++p) { + if (!isalnum ((int)*p)) { + *p = '_'; } } } p = getenv (buff); - if (!p) { + if (p) { + cob_move_intermediate (envval, p, strlen (p)); + } else { cob_set_exception (COB_EC_IMP_ACCEPT); - p = " "; + cob_move_intermediate (envval, " ", 1); } - cob_move_intermediate (envval, p, strlen (p)); - cob_free (buff); } void @@ -5811,23 +5926,22 @@ cob_accept_environment (cob_field *f) if (cob_local_env) { p = getenv (cob_local_env); } - if (!p) { + if (p) { + cob_move_intermediate (f, p, strlen (p)); + } else { cob_set_exception (COB_EC_IMP_ACCEPT); - p = " "; + cob_move_intermediate (f, " ", 1); } - cob_move_intermediate (f, p, strlen (p)); } void cob_chain_setup (void *data, const size_t parm, const size_t size) { - size_t len; - /* only set if given on command-line, otherwise use normal program internal initialization */ if (parm <= (size_t)cob_argc - 1) { + const size_t len = strlen (cob_argv[parm]); memset (data, ' ', size); - len = strlen (cob_argv[parm]); if (len <= size) { memcpy (data, cob_argv[parm], len); } else { @@ -5842,8 +5956,7 @@ cob_continue_after (cob_field *decimal_seconds) cob_s64_t nanoseconds = get_sleep_nanoseconds_from_seconds (decimal_seconds); if (nanoseconds < 0) { - /* TODO: current COBOL 20xx change proposal - specifies EC-CONTINUE-LESS-THAN-ZERO (NF) here... */ + cob_set_exception (COB_EC_CONTINUE_LESS_THAN_ZERO); return; } internal_nanosleep (nanoseconds, 0); @@ -5908,12 +6021,10 @@ cob_allocate (unsigned char **dataptr, cob_field *retptr, void cob_free_alloc (unsigned char **ptr1, unsigned char *ptr2) { - struct cob_alloc_cache *cache_ptr; - struct cob_alloc_cache *prev_ptr; + struct cob_alloc_cache *cache_ptr = cob_alloc_base; + struct cob_alloc_cache *prev_ptr = cob_alloc_base; cobglobptr->cob_exception_code = 0; - cache_ptr = cob_alloc_base; - prev_ptr = cob_alloc_base; if (ptr1 && *ptr1) { void *vptr1; vptr1 = *ptr1; @@ -6509,41 +6620,41 @@ cob_sys_hosted (void *p, const void *var) if (COB_MODULE_PTR->cob_procedure_params[1]) { i = (int)COB_MODULE_PTR->cob_procedure_params[1]->size; - if ((i == 4) && !strncmp (name, "argc", 4)) { + if ((i == 4) && !memcmp (name, "argc", 4)) { *((int *)data) = cob_argc; return 0; } - if ((i == 4) && !strncmp (name, "argv", 4)) { + if ((i == 4) && !memcmp (name, "argv", 4)) { *((char ***)data) = cob_argv; return 0; } - if ((i == 5) && !strncmp (name, "stdin", 5)) { + if ((i == 5) && !memcmp (name, "stdin", 5)) { *((FILE **)data) = stdin; return 0; } - if ((i == 6) && !strncmp (name, "stdout", 6)) { + if ((i == 6) && !memcmp (name, "stdout", 6)) { *((FILE **)data) = stdout; return 0; } - if ((i == 6) && !strncmp (name, "stderr", 6)) { + if ((i == 6) && !memcmp (name, "stderr", 6)) { *((FILE **)data) = stderr; return 0; } - if ((i == 5) && !strncmp (name, "errno", 5)) { + if ((i == 5) && !memcmp (name, "errno", 5)) { *((int **)data) = &errno; return 0; } #if defined (HAVE_TIMEZONE) - if ((i == 6) && !strncmp (name, "tzname", 6)) { + if ((i == 6) && !memcmp (name, "tzname", 6)) { /* Recheck: bcc raises "suspicious pointer conversion */ *((char ***)data) = tzname; return 0; } - if ((i == 8) && !strncmp (name, "timezone", 8)) { + if ((i == 8) && !memcmp (name, "timezone", 8)) { *((long *)data) = timezone; return 0; } - if ((i == 8) && !strncmp (name, "daylight", 8)) { + if ((i == 8) && !memcmp (name, "daylight", 8)) { *((int *)data) = daylight; return 0; } @@ -7381,7 +7492,8 @@ cob_sys_getopt_long_long (void *so, void *lo, void *idx, const int long_only, vo /* add 0-termination to strings */ shortoptions = cob_malloc (so_size + 1U); if (COB_MODULE_PTR->cob_procedure_params[0]) { - cob_field_to_string (COB_MODULE_PTR->cob_procedure_params[0], shortoptions, so_size); + cob_field_to_string (COB_MODULE_PTR->cob_procedure_params[0], + shortoptions, so_size, CCM_NONE); } if (COB_MODULE_PTR->cob_procedure_params[1]) { @@ -7601,43 +7713,43 @@ void cob_set_locale (cob_field *locale, const int category) { #ifdef HAVE_SETLOCALE + char buff[COB_MINI_BUFF]; char *p; - char *buff; - p = NULL; if (locale) { - if (locale->size == 0) { + int flen = cob_field_to_string (locale, buff, + COB_MINI_MAX, CCM_NONE); + if (flen < 1) { return; } - buff = cob_malloc (locale->size + 1U); - cob_field_to_string (locale, buff, locale->size); + p = buff; } else { - buff = NULL; + p = NULL; } switch (category) { case COB_LC_COLLATE: - p = setlocale (LC_COLLATE, buff); + p = setlocale (LC_COLLATE, p); break; case COB_LC_CTYPE: - p = setlocale (LC_CTYPE, buff); + p = setlocale (LC_CTYPE, p); break; #ifdef LC_MESSAGES case COB_LC_MESSAGES: - p = setlocale (LC_MESSAGES, buff); + p = setlocale (LC_MESSAGES, p); break; #endif case COB_LC_MONETARY: - p = setlocale (LC_MONETARY, buff); + p = setlocale (LC_MONETARY, p); break; case COB_LC_NUMERIC: - p = setlocale (LC_NUMERIC, buff); + p = setlocale (LC_NUMERIC, p); break; case COB_LC_TIME: - p = setlocale (LC_TIME, buff); + p = setlocale (LC_TIME, p); break; case COB_LC_ALL: - p = setlocale (LC_ALL, buff); + p = setlocale (LC_ALL, p); break; case COB_LC_USER: if (cobglobptr->cob_locale_orig) { @@ -7651,9 +7763,6 @@ cob_set_locale (cob_field *locale, const int category) } break; } - if (buff) { - cob_free (buff); - } if (!p) { cob_set_exception (COB_EC_LOCALE_MISSING); return; @@ -7968,8 +8077,9 @@ translate_boolean_to_int (const char *ptr) if (ptr == NULL || *ptr == 0) { return 2; } - if (*(ptr + 1) == 0 && isdigit ((unsigned char)*ptr)) { - return atoi (ptr); /* 0 or 1 */ + if (*(ptr + 1) == 0 + && (*ptr == '0' || *ptr == '1')) { + return COB_D2I (*ptr); /* 0 or 1 */ } else /* pre-translated boolean "never" - not set" */ if (strcmp (ptr, "!") == 0) { @@ -7996,7 +8106,8 @@ translate_boolean_to_int (const char *ptr) static int /* returns 1 if any error, else 0 */ set_config_val (char *value, int pos) { - char *ptr = value, *str; + register char *ptr = value; + char *str; cob_s64_t numval = 0; int i, slen; @@ -8083,13 +8194,13 @@ set_config_val (char *value, int pos) sign = *ptr; ptr++; } - if (!isdigit ((unsigned char)*ptr)) { + if (IS_INVALID_DIGIT_DATA (*ptr)) { conf_runtime_error_value (ptr, pos); conf_runtime_error (1, _("should be numeric")); return 1; } - for (; *ptr != 0 && (isdigit ((unsigned char)*ptr)); ptr++) { - numval = (numval * 10) + COB_D2I (*ptr); + while (IS_VALID_DIGIT_DATA (*ptr)) { + numval = (numval * 10) + COB_D2I (*ptr++); } if (sign != 0 && ( *ptr == '-' @@ -8200,7 +8311,7 @@ set_config_val (char *value, int pos) } /* call internal routines that do post-processing */ - if (data == (char *)cobsetptr->cob_date) { + if (data == (void *)cobsetptr->cob_date) { check_current_date (); } @@ -8788,7 +8899,7 @@ cob_load_config (void) } } } - check_current_date(); + check_current_date (); return 0; } @@ -9196,7 +9307,7 @@ cob_fatal_error (const enum cob_fatal_error fatal_error) err_cause = cob_get_filename_print (cobglobptr->cob_error_file, 1); /* FIXME: additional check if referenced program has active code location */ if (cobglobptr->last_exception_statement == STMT_UNKNOWN) { - cob_runtime_error (_ ("%s (status = %02d) for file %s"), + cob_runtime_error (_("%s (status = %02d) for file %s"), msg, status, err_cause); } else { cob_runtime_error (_("%s (status = %02d) for file %s on %s"), @@ -9708,7 +9819,7 @@ print_info_detailed (const int verbose) may interfer with other output */ #if defined (COB_GEN_SCREENIO) mouse_support = get_screenio_and_mouse_info - ((char*)&screenio_info, sizeof (screenio_info), verbose); + ((char*)&screenio_info, sizeof (screenio_info), verbose); #else snprintf ((char *)&screenio_info, sizeof(screenio_info) - 1, "%s", _("disabled")); @@ -10318,6 +10429,7 @@ cob_init (const int argc, char **argv) /* Call inits with cobsetptr to get the addresses of all */ /* Screen-IO might be needed for error outputs */ cob_init_screenio (cobglobptr, cobsetptr); + cob_init_cconv (cobglobptr); cob_init_numeric (cobglobptr); cob_init_strings (cobglobptr); cob_init_move (cobglobptr, cobsetptr); @@ -10372,10 +10484,6 @@ cob_init (const int argc, char **argv) #endif } -#if defined(_MSC_VER) - get_function_ptr_for_precise_time (); -#endif - /* This must be last in this function as we do early return */ /* from certain ifdef's */ diff --git a/libcob/common.h b/libcob/common.h index 2af6a2bcd..e7ca564a8 100644 --- a/libcob/common.h +++ b/libcob/common.h @@ -252,15 +252,16 @@ typedef __mpz_struct mpz_t[1]; #endif -#elif defined(_MSC_VER) - +#elif 0 && defined(_MSC_VER) +/* shown to not work correctly in some cases, so fall-back + to our generic inline version, which works */ #define COB_BSWAP_16(val) (_byteswap_ushort (val)) #define COB_BSWAP_32(val) (_byteswap_ulong (val)) #define COB_BSWAP_64(val) (_byteswap_uint64 (val)) #elif defined(__ORANGEC__) -#define COB_BSWAP_16(val) (COB_BSWAP_16_CONSTANT (val)) +#define COB_BSWAP_16(val) (__builtin_bswap16 (val)) #define COB_BSWAP_32(val) (__builtin_bswap32 (val)) #define COB_BSWAP_64(val) (__builtin_bswap64 (val)) @@ -585,7 +586,8 @@ only usable with COB_USE_VC2013_OR_GREATER */ /* Maximum length of COBOL program names */ #define COB_MAX_NAMELEN 31 -/* Maximum number of subscripts */ +/* Maximum number of subscripts; + TODO: add compiler configuration for limiting this */ #define COB_MAX_SUBSCRIPTS 16 /* Memory size for sorting */ @@ -1057,20 +1059,24 @@ enum cob_open_mode { #define COB_STORE_TOWARD_LESSER (1 << 10) #define COB_STORE_TRUNCATION (1 << 11) +#define COB_STORE_NO_SIZE_ERROR (1 << 15) + #define COB_STORE_MASK \ (COB_STORE_ROUND | COB_STORE_KEEP_ON_OVERFLOW | \ - COB_STORE_TRUNC_ON_OVERFLOW) + COB_STORE_TRUNC_ON_OVERFLOW | COB_STORE_NO_SIZE_ERROR) /* Screen attribute defines */ -#define COB_SCREEN_BLACK 0 -#define COB_SCREEN_BLUE 1 -#define COB_SCREEN_GREEN 2 -#define COB_SCREEN_CYAN 3 -#define COB_SCREEN_RED 4 -#define COB_SCREEN_MAGENTA 5 -#define COB_SCREEN_YELLOW 6 -#define COB_SCREEN_WHITE 7 +enum cob_colors { + COB_SCREEN_BLACK = 0, + COB_SCREEN_BLUE = 1, + COB_SCREEN_GREEN = 2, + COB_SCREEN_CYAN = 3, + COB_SCREEN_RED = 4, + COB_SCREEN_MAGENTA = 5, + COB_SCREEN_YELLOW = 6, + COB_SCREEN_WHITE = 7 +}; typedef cob_s64_t cob_flags_t; @@ -1104,11 +1110,12 @@ typedef cob_s64_t cob_flags_t; #define COB_SCREEN_EMULATE_NL ((cob_flags_t)1 << 27) #define COB_SCREEN_UPPER ((cob_flags_t)1 << 28) #define COB_SCREEN_LOWER ((cob_flags_t)1 << 29) -#define COB_SCREEN_GRID ((cob_flags_t)1 << 30) +#define COB_SCREEN_CONV ((cob_flags_t)1 << 30) /*#define COB_SCREEN_reserved ((cob_flags_t)1 << 31) /+ reserved for next flag used in screenio */ #define COB_SCREEN_TAB ((cob_flags_t)1 << 32) /* used for syntax checking */ #define COB_SCREEN_NO_UPDATE ((cob_flags_t)1 << 33) /* used for syntax checking */ #define COB_SCREEN_SCROLL_UP ((cob_flags_t)1 << 34) /* used for syntax checking */ +#define COB_SCREEN_GRID ((cob_flags_t)1 << 35) /* used for syntax checking */ #define COB_SCREEN_TYPE_GROUP 0 #define COB_SCREEN_TYPE_FIELD 1 @@ -1464,7 +1471,9 @@ struct cob_func_loc { int save_num_params; }; -/* File connector */ + +/** File connector **/ + /* Key structure */ @@ -2062,7 +2071,7 @@ struct cob_time /* note: these are internal (cobc/libcob -> libcob) only functions */ COB_EXPIMP struct cob_time cob_get_current_date_and_time (void); /* returning datetime without nanos */ -COB_EXPIMP int cob_set_date_from_epoch (struct cob_time *, const char *); +COB_EXPIMP int cob_set_date_from_epoch (struct cob_time *, unsigned const char *); COB_EXPIMP void cob_sleep_msec (const unsigned int); @@ -2115,6 +2124,7 @@ COB_EXPIMP void cob_check_beyond_exit (const char *); /* Comparison functions */ COB_EXPIMP int cob_numeric_cmp (cob_field *, cob_field *); +COB_EXPIMP int cob_bcd_cmp (cob_field *, cob_field *); /*******************************/ /* Functions in strings.c */ @@ -2143,6 +2153,12 @@ COB_EXPIMP void cob_unstring_into (cob_field *, cob_field *, cob_field *); COB_EXPIMP void cob_unstring_tallying (cob_field *); COB_EXPIMP void cob_unstring_finish (void); +COB_EXPIMP const char *COB_SPACES_ALPHABETIC; /* PIC X/A/U SPACES */ +#define COB_SPACES_ALPHABETIC_BYTE_LENGTH 1024 + +COB_EXPIMP const char *COB_ZEROES_ALPHABETIC; /* PIC X/A/U ZEROES */ +#define COB_ZEROES_ALPHABETIC_BYTE_LENGTH 256 + /*******************************/ /* Functions in move.c */ /*******************************/ @@ -2236,6 +2252,8 @@ COB_EXPIMP int cob_cmp_float (cob_field *, cob_field *); COB_EXPIMP void cob_set_packed_zero (cob_field *); COB_EXPIMP void cob_set_packed_int (cob_field *, const int); +COB_EXPIMP void cob_move_bcd (cob_field *, cob_field *); + COB_EXPIMP void cob_decimal_alloc (const cob_u32_t, ...); COB_EXPIMP void cob_decimal_push (const cob_u32_t, ...); COB_EXPIMP void cob_decimal_pop (const cob_u32_t, ...); @@ -2297,6 +2315,8 @@ COB_EXPIMP void cob_screen_display (cob_screen *, cob_field *, COB_EXPIMP void cob_screen_accept (cob_screen *, cob_field *, cob_field *, cob_field *, const int); +COB_EXPIMP void cob_accept_field (cob_field *, const cob_flags_t, const char *, ...); +COB_EXPIMP void cob_display_field (cob_field *, const cob_flags_t, const char *, ...); COB_EXPIMP void cob_field_display (cob_field *, cob_field *, cob_field *, cob_field *, cob_field *, cob_field *, cob_field *, const cob_flags_t); @@ -2630,7 +2650,7 @@ typedef struct __fcd2 { #define fileDef _fileDef.ptr_name /* EXTFH: pointer to filedef */ #define dfSortPtr _dfSortPtr.ptr_name /* EXTFH: pointer to DFSORT */ -#define LSUCHAR(f) ((unsigned char*)(f)) +#define LSUCHAR(f) ((unsigned char *)(f)) /* xxCOMPXn : Big Endian Binary data */ #define LDCOMPX2(f) ((((f)[0] << 8 ) & 0xFF00) | ((f)[1] & 0xFF)) #define LDCOMPX4(f) ((((f)[0] << 24 ) & 0xFF000000) | (((f)[1] << 16 ) & 0xFF0000) | (((f)[2] << 8 ) & 0xFF00) | ((f)[3] & 0xFF)) diff --git a/libcob/fextfh.c b/libcob/fextfh.c index fbbd3ceee..63a7e1d10 100644 --- a/libcob/fextfh.c +++ b/libcob/fextfh.c @@ -204,7 +204,7 @@ copy_file_to_fcd (cob_file *f, FCD3 *fcd) char assign_to[COB_FILE_BUFF]; size_t fnlen; if (f->assign) { - cob_field_to_string (f->assign, assign_to, COB_FILE_MAX); + cob_field_to_string (f->assign, assign_to, COB_FILE_MAX, CCM_NONE); } else if (f->select_name) { strncpy (assign_to, f->select_name, COB_FILE_MAX); assign_to[COB_FILE_MAX] = 0; @@ -564,8 +564,9 @@ copy_fcd_to_file (FCD3* fcd, cob_file *f, struct fcd_file *fcd_list_entry) } } else if(fcd->fileOrg == ORG_RELATIVE) { f->organization = COB_ORG_RELATIVE; - if (f->keys == NULL) + if (f->keys == NULL) { f->keys = cob_cache_malloc(sizeof(cob_file_key)); + } if (f->keys[0].field == NULL) { f->keys[0].field = cob_cache_malloc(sizeof(cob_field)); f->keys[0].field->data = cob_cache_malloc (4); @@ -628,25 +629,29 @@ copy_fcd_to_file (FCD3* fcd, cob_file *f, struct fcd_file *fcd_list_entry) /* build select name from assign value, if missing */ if (f->select_name == NULL && f->assign != NULL) { + const int max_size = ((int)f->assign->size > 48) + ? 48 : (int)f->assign->size; char fdname[49]; char *origin = (char*)f->assign->data; /* limit filename to last element after path separator, when specified */ - for (k=(int)f->assign->size - 1; k; k--) { + for (k = max_size - 1; k; k--) { if (f->assign->data[k] == SLASH_CHAR #ifdef _WIN32 || f->assign->data[k] == '/' #endif ) { - origin = (char*)&f->assign->data[k+1]; + origin = (char *)f->assign->data + k + 1; break; } } - /* now copy that until the first space/low-value (max 48) as upper-case */ - for (k=0; origin[k] && origin[k] > ' ' && k < 48; k++) { + /* now copy that until the first space/low-value up to + max_size as upper-case */ + for (k = 0; origin[k] && origin[k] > ' ' && k < max_size; k++) { fdname[k] = (char)toupper((int)origin[k]); } fdname[k] = 0; + k++; /* copy with trailing NUL */ /* we don't necessarily know later if we built the name ourself, so we need to cache the storage */ f->select_name = cob_cache_malloc (k); @@ -968,9 +973,9 @@ cob_extfh_close ( COB_UNUSED (remfil); f->last_operation = COB_LAST_CLOSE; - fcd = find_fcd(f); - STCOMPX4(opt, fcd->opt); - STCOMPX2(OP_CLOSE, opcode); + fcd = find_fcd (f); + STCOMPX4 (opt, fcd->opt); + STCOMPX2 (OP_CLOSE, opcode); /* Keep table of 'fcd' created */ (void)callfh (opcode, fcd); @@ -1363,6 +1368,9 @@ EXTFH (unsigned char *opcode, FCD3 *fcd) #if !COB_64_BIT_POINTER if (fcd->fcdVer == FCD2_VER) { int rtnsts; +#if 0 + int opcd; +#endif FCD2 *fcd2 = (FCD2 *) fcd; fcd = fcd2_to_fcd3 (fcd2); @@ -1375,6 +1383,18 @@ EXTFH (unsigned char *opcode, FCD3 *fcd) /* Convert FCD3 back to FCD2 format */ fcd3_to_fcd2 (fcd, fcd2); +#if 0 + if (*opcode == 0xFA) { + opcd = 0xFA00 + opcode[1]; + } else { + opcd = opcode[1]; + } + + if (opcd == OP_CLOSE) { + free_fcd2 (fcd2); + } +#endif + return rtnsts; } #endif @@ -1391,7 +1411,7 @@ EXTFH3 (unsigned char *opcode, FCD3 *fcd) int opcd,sts,opts,eop,k; unsigned char fnstatus[2]; /* storage for local file status field */ - unsigned char keywrk[80]; + unsigned char keywrk[80]; /* key data used for IDX, if not passed */ char fname[COB_FILE_MAX]; /* different cob_fields as some ABI functions operate on those */ cob_field fs[1]; @@ -1420,7 +1440,7 @@ EXTFH3 (unsigned char *opcode, FCD3 *fcd) COB_MODULE_PTR = cob_malloc( sizeof(cob_module) ); COB_MODULE_PTR->module_name = "GnuCOBOL-fileio"; COB_MODULE_PTR->module_source = "GnuCOBOL-fileio"; - COB_MODULE_PTR->module_formatted_date = "2021/10/03 12:01:20"; + COB_MODULE_PTR->module_formatted_date = "2023/02/06 12:01:20"; } if (*opcode == 0xFA) { @@ -1482,10 +1502,12 @@ EXTFH3 (unsigned char *opcode, FCD3 *fcd) if (opcd == OP_GETINFO) { if (fcd->fnamePtr) { k = strlen(fcd->fnamePtr); - if (k > LDCOMPX2(fcd->fnameLen)) + if (k > LDCOMPX2(fcd->fnameLen)) { k = LDCOMPX2(fcd->fnameLen); - while (k > 0 && fcd->fnamePtr[k-1] == ' ') + } + while (k > 0 && fcd->fnamePtr[k-1] == ' ') { --k; + } memcpy (fname, fcd->fnamePtr, k); fname[k] = 0; f->flag_auto_type = 1; diff --git a/libcob/fileio.c b/libcob/fileio.c index a942ece3e..512ee990f 100644 --- a/libcob/fileio.c +++ b/libcob/fileio.c @@ -3428,7 +3428,9 @@ cob_file_save_status (cob_file *f, cob_field *fnstatus, const int status) #endif eop_status = 0; } - if ((f->file_features & COB_FILE_SYNC)) { + if ((f->file_features & COB_FILE_SYNC) + && f->last_operation != COB_LAST_OPEN + && f->open_mode != COB_OPEN_CLOSED) { cob_file_sync (f); } } else if (!skip_exn) { @@ -4240,22 +4242,24 @@ cob_fd_file_open (cob_file *f, char *filename, if ((ret=set_file_lock(f, filename, mode)) != 0) return ret; f->record_off = -1; -#if 0 /* Simon: disabled, this function is expected to not use a file */ +#if 0 /* Simon: disabled, this function is expected to not use a FILE* */ { - const char *fmode; + const char *fopen_flags; if (mode == COB_OPEN_INPUT) { - fmode = "r"; + fopen_flags = "r"; } else if (mode == COB_OPEN_I_O) { if (nonexistent) - fmode = "w+"; + fopen_flags = "w+"; else - fmode = "r+"; + fopen_flags = "r+"; } else if (mode == COB_OPEN_EXTEND) { - fmode = ""; + fopen_flags = ""; } else { - fmode = "w"; + fopen_flags = "w"; } - f->file = (void*)fdopen(f->fd, fmode); + /* note: _if_ this is activated (which likely needs adjustments in + other places) then also handle cobsetptr->cob_unix_lf */ + f->file = (void*)fdopen(f->fd, fopen_flags); } #endif if (f->flag_optional && nonexistent) { @@ -4486,7 +4490,6 @@ cob_file_open (cob_file_api *a, cob_file *f, char *filename, } } - fmode = NULL; /* Open the file */ switch (mode) { case COB_OPEN_INPUT: @@ -4544,6 +4547,7 @@ cob_file_open (cob_file_api *a, cob_file *f, char *filename, break; /* LCOV_EXCL_START */ default: + fmode = NULL; cob_runtime_error (_("invalid internal call of %s"), "cob_file_open"); cob_fatal_error (COB_FERROR_CODEGEN); /* LCOV_EXCL_STOP */ @@ -4688,10 +4692,10 @@ cob_file_close (cob_file_api *a, cob_file *f, const int opt) COB_CHECKED_WRITE (f->fd, "\n", 1); } } -#ifdef HAVE_FCNTL /* Unlock the file */ if (f->fd >= 0 && !f->flag_is_pipe) { +#ifdef HAVE_FCNTL struct flock lock; memset ((void *)&lock, 0, sizeof (struct flock)); lock.l_type = F_UNLCK; @@ -4702,14 +4706,13 @@ cob_file_close (cob_file_api *a, cob_file *f, const int opt) if (fcntl (f->fd, F_SETLK, &lock) == -1) { cob_runtime_warning ("issue during unlock (%s), errno: %d", "cob_file_close", errno); } - } #elif defined _WIN32 - { - HANDLE osHandle = (HANDLE)_get_osfhandle (f->fd); - if (osHandle != INVALID_HANDLE_VALUE) { + { + HANDLE osHandle = (HANDLE)_get_osfhandle (f->fd); /* CHECKME: Should this use UnlockFileEx ? */ - if (!UnlockFile (osHandle, 0, 0, MAXDWORD, MAXDWORD)) { -#if 0 /* CHECKME - What is the correct thing to do here? */ + if (osHandle != INVALID_HANDLE_VALUE + && !UnlockFile (osHandle, 0, 0, MAXDWORD, MAXDWORD)) { +#if 0 /* CHECKME - What is the correct thing to do here? */ const DWORD last_error = GetLastError (); if (last_error != 158) { /* no locked region */ /* not translated as "testing only" */ @@ -4719,8 +4722,8 @@ cob_file_close (cob_file_api *a, cob_file *f, const int opt) #endif } } - } #endif + } /* Close the file */ if (f->organization == COB_ORG_LINE_SEQUENTIAL) { if (f->flag_is_pipe) { @@ -4728,7 +4731,7 @@ cob_file_close (cob_file_api *a, cob_file *f, const int opt) if (f->file) fclose (f->file); if (f->fileout - && f->fileout != f->file) + && f->fileout != f->file) fclose (f->fileout); #if defined (HAVE_UNISTD_H) && !(defined (_WIN32)) { @@ -4765,7 +4768,10 @@ cob_file_close (cob_file_api *a, cob_file *f, const int opt) if (f->file != NULL) { fclose ((FILE *)f->file); f->file = NULL; +#ifdef _WIN32 + /* at least on MSVC that closes the underlying file descriptor, too */ f->fd = -1; +#endif } #endif } else { @@ -4802,37 +4808,57 @@ open_next (cob_file *f) { if (f->flag_is_concat && *f->nxt_filename != 0) { - char *nx = strchr(f->nxt_filename,file_setptr->cob_concat_sep[0]); + char *nx = strchr (f->nxt_filename,file_setptr->cob_concat_sep[0]); + int fmode = O_BINARY; /* without this ftell does not work on some systems */ + +#ifdef _WIN32 /* win32 seems to resolve the file descriptor from the file handler + on fclose - and then aborts because it was closed directly before */ + if (f->file) { + fclose (f->file); + } else { + close (f->fd); + } +#else close (f->fd); if (f->file) { fclose (f->file); } - f->fd = -1; - f->file = NULL; +#endif + if (f->open_mode == COB_OPEN_I_O) { + fmode |= O_RDWR; + } else { + fmode |= O_RDONLY; + } if (nx) { *nx = 0; - if (f->open_mode == COB_OPEN_I_O) - f->fd = open (f->nxt_filename, O_RDWR); - else - f->fd = open (f->nxt_filename, O_RDONLY); + f->fd = open (f->nxt_filename, fmode); f->nxt_filename = nx + 1; } else { - if (f->open_mode == COB_OPEN_I_O) - f->fd = open (f->nxt_filename, O_RDWR); - else - f->fd = open (f->nxt_filename, O_RDONLY); + f->fd = open (f->nxt_filename, fmode); f->flag_is_concat = 0; if (f->org_filename) { cob_free (f->org_filename); f->org_filename = NULL; } } - if (f->fd != -1) { - if (f->open_mode == COB_OPEN_INPUT) { - f->file = (void*)fdopen(f->fd, "r"); + if (f->fd == -1) { + f->file = NULL; + } else { + const char *fopen_flags; + if (cobsetptr->cob_unix_lf) { + if (f->open_mode == COB_OPEN_INPUT) { + fopen_flags = "rb"; + } else { + fopen_flags = "rb+"; + } } else { - f->file = (void*)fdopen(f->fd, "r+"); + if (f->open_mode == COB_OPEN_INPUT) { + fopen_flags = "r"; + } else { + fopen_flags = "r+"; + } } + f->file = (void*)fdopen(f->fd, fopen_flags); return 1; } } @@ -5176,6 +5202,9 @@ lineseq_read (cob_file_api *a, cob_file *f, const int read_opts) if (!f->flag_is_pipe) { f->record_off = ftell (fp); /* Save position at start of line */ } + /* Note: at least on Win32 the offset resolved does only return the right values + when file was opened in binary mode -> cob_unix_lf; as an alternative + we could increment the record_off field on each read/write */ for (; ;) { n = getc (fp); if (n == EOF) { @@ -5550,6 +5579,7 @@ lineseq_rewrite (cob_file_api *a, cob_file *f, const int opt) psize = size; slotlen = curroff - f->record_off - 1; if ((f->file_features & COB_FILE_LS_CRLF)) { + /* CHECKME: likely also needed if not opened with unix-lf */ slotlen--; } if ((f->file_features & COB_FILE_LS_NULLS) @@ -6887,7 +6917,7 @@ cob_pre_open (cob_file *f) /* Obtain the file name */ if (f->assign != NULL && f->assign->data != NULL) { - cob_field_to_string (f->assign, file_open_name, (size_t)COB_FILE_MAX); + cob_field_to_string (f->assign, file_open_name, (size_t)COB_FILE_MAX, CCM_NONE); f->flag_file_map = 1; cob_chk_file_mapping (f, NULL); @@ -6939,7 +6969,7 @@ cob_pre_open_def (cob_file *f, char *setdef, char *isdef, int checkfile) f->cur_rec_num = 0; if (f->assign != NULL && f->assign->data != NULL) { - cob_field_to_string (f->assign, file_open_name, (size_t)COB_FILE_MAX); + cob_field_to_string (f->assign, file_open_name, COB_FILE_MAX, CCM_NONE); } cob_set_file_defaults (f); @@ -7088,6 +7118,17 @@ cob_open (cob_file *f, const enum cob_open_mode mode, const int sharing, cob_fie return; } + /* Check for _bad_ quotes */ + if (file_open_name[0] == '"' + || file_open_name[0] == '\'') { + const size_t len = strlen (file_open_name) - 1; + if (len == 0 + || file_open_name[len] != file_open_name[0]) { + cob_file_save_status (f, fnstatus, COB_STATUS_31_INCONSISTENT_FILENAME); + return; + } + } + if (file_open_name[0] == 0) { cob_file_save_status (f, fnstatus, COB_STATUS_31_INCONSISTENT_FILENAME); return; @@ -8091,7 +8132,7 @@ cob_delete_file (cob_file *f, cob_field *fnstatus, const int override) } /* Obtain the file name */ - cob_field_to_string (f->assign, file_open_name, (size_t)COB_FILE_MAX); + cob_field_to_string (f->assign, file_open_name, COB_FILE_MAX, CCM_NONE); cob_chk_file_mapping (f, NULL); if (f->file_status[0] > '0') { cob_file_save_status (f, fnstatus, @@ -9666,9 +9707,9 @@ cob_get_filename_print (cob_file* file, const int show_resolved_name) { size_t offset = 0, len; /* Obtain the file name */ - cob_field_to_string (file->assign, file_open_env, (size_t)COB_FILE_MAX); + cob_field_to_string (file->assign, file_open_env, COB_FILE_MAX, CCM_NONE); if (show_resolved_name) { - strncpy (file_open_name, file_open_env, (size_t)COB_FILE_MAX); + strncpy (file_open_name, file_open_env, COB_FILE_MAX); file_open_name[COB_FILE_MAX] = 0; cob_chk_file_mapping (file, NULL); } @@ -9791,7 +9832,8 @@ cob_init_fileio (cob_global *lptr, cob_settings *sptr) file_open_buff = runtime_buffer + (3 * COB_FILE_BUFF); /* TRANSLATORS: This msgid is concatenated with a filename; - setup translation to allow this to be followed on the right side. */ + setup translation to allow this to be followed on the right side, + if necessary use a colon or hyphen */ implicit_close_of_msgid = _("implicit CLOSE of "); file_api.glbptr = file_globptr = lptr; diff --git a/libcob/fileio.h b/libcob/fileio.h index d7677d9a8..4071d832b 100644 --- a/libcob/fileio.h +++ b/libcob/fileio.h @@ -116,9 +116,8 @@ int fdatasync(int fd); #define MAXNUMKEYS 32 #endif -/* Force symbol exports */ +/* include internal and external libcob definitions, forcing exports */ #define COB_LIB_EXPIMP -#include "common.h" #include "coblocal.h" #ifdef WORDS_BIGENDIAN diff --git a/libcob/fsqlxfd.c b/libcob/fsqlxfd.c index 225381f6e..38f920bf5 100644 --- a/libcob/fsqlxfd.c +++ b/libcob/fsqlxfd.c @@ -1062,7 +1062,7 @@ cob_load_xfd (struct db_state *db, cob_file *fl, char *alt_name, int indsize, in && fl->xfdname[0] > ' ') { fname = (char*)fl->xfdname; } else if (fl->assign) { - cob_field_to_string (fl->assign, asgname, (size_t)255); + cob_field_to_string (fl->assign, asgname, (size_t)255, CCM_NONE); if ((p = strrchr(asgname, SLASH_CHAR)) != NULL) fname = p + 1; else diff --git a/libcob/intrinsic.c b/libcob/intrinsic.c index ee76b2e35..40e282b4d 100644 --- a/libcob/intrinsic.c +++ b/libcob/intrinsic.c @@ -34,8 +34,7 @@ #endif #include -/* Force symbol exports, include decimal definitions */ -#define COB_LIB_EXPIMP +/* include decimal definitions, allowing their use in common.h later */ #ifdef HAVE_GMP_H #include #elif defined HAVE_MPIR_H @@ -43,7 +42,9 @@ #else #error either HAVE_GMP_H or HAVE_MPIR_H needs to be defined #endif -#include "common.h" + +/* include internal and external libcob definitions, forcing exports */ +#define COB_LIB_EXPIMP #include "coblocal.h" /* Note we include the Cygwin version of windows.h here */ @@ -488,18 +489,20 @@ setup_cob_log_ten (void) static void make_field_entry (cob_field *f) { - unsigned char *s; struct calc_struct *calc_temp; + unsigned char *s; calc_temp = calc_base + curr_entry; curr_field = &calc_temp->calc_field; if (f->size > calc_temp->calc_size) { + /* set new temporary field data, storing its size */ if (curr_field->data) { cob_free (curr_field->data); } calc_temp->calc_size = f->size + 1; s = cob_malloc (f->size + 1U); } else { + /* reuse last temporary field data */ s = curr_field->data; memset (s, 0, f->size); } @@ -1792,10 +1795,9 @@ static int locale_time (const int hours, const int minutes, const int seconds, cob_field *locale_field, char *buff) { - char *deflocale = NULL; + int deflocale = 0; struct tm tstruct; char buff2[LOCTIME_BUFSIZE] = { '\0' }; - char locale_buff[COB_SMALL_BUFF] = { '\0' }; /* Initialize tstruct to given time */ memset ((void *)&tstruct, 0, sizeof(struct tm)); @@ -1804,18 +1806,18 @@ locale_time (const int hours, const int minutes, const int seconds, tstruct.tm_sec = seconds; if (locale_field) { - if (locale_field->size >= COB_SMALL_BUFF) { + char locale_buff[COB_MINI_BUFF]; + deflocale = cob_field_to_string (locale_field, locale_buff, + COB_MINI_MAX, CCM_NONE); + if (deflocale < 1) { return 1; } - cob_field_to_string (locale_field, locale_buff, - (size_t)COB_SMALL_MAX); - deflocale = locale_buff; - (void) setlocale (LC_TIME, deflocale); + (void) setlocale (LC_TIME, locale_buff); } /* Get strftime format string for locale */ memset (buff2, 0, LOCTIME_BUFSIZE); - snprintf(buff2, LOCTIME_BUFSIZE - 1, "%s", nl_langinfo(T_FMT)); + snprintf (buff2, LOCTIME_BUFSIZE - 1, "%s", nl_langinfo (T_FMT)); /* Set locale if not done yet */ if (deflocale) { @@ -1832,10 +1834,8 @@ locale_time (const int hours, const int minutes, const int seconds, cob_field *locale_field, char *buff) { size_t len; - unsigned char *p; LCID localeid = LOCALE_USER_DEFAULT; SYSTEMTIME syst; - char locale_buff[COB_SMALL_BUFF] = { '\0' }; /* Initialize syst with given time */ memset ((void *)&syst, 0, sizeof(syst)); @@ -1845,13 +1845,13 @@ locale_time (const int hours, const int minutes, const int seconds, /* Get specified locale */ if (locale_field) { - if (locale_field->size >= COB_SMALL_BUFF) { - return 1; - } - cob_field_to_string (locale_field, locale_buff, - COB_SMALL_MAX); - - /* Null-terminate last char of the locale string */ + char locale_buff[COB_MINI_BUFF]; + int flen = cob_field_to_string (locale_field, locale_buff, + COB_MINI_MAX, CCM_NONE); +#if 0 /* re-null-terminate last char (first space/comma/...) + of the locale string + -> Simon: Why? We already have it rtrimmed */ + unsigned char *p; for (p = (unsigned char *)locale_buff; *p; ++p) { if (isalnum((int)*p) || *p == '_') { continue; @@ -1859,10 +1859,14 @@ locale_time (const int hours, const int minutes, const int seconds, break; } *p = 0; +#endif + if (flen < 1) { + return 1; + } /* Find locale ID */ for (len = 0; len < WINLOCSIZE; ++len) { - if (!strcmp(locale_buff, wintable[len].winlocalename)) { + if (!strcmp (locale_buff, wintable[len].winlocalename)) { localeid = wintable[len].winlocaleid; break; } @@ -2622,15 +2626,19 @@ test_char (const char wanted, const char *str, int *offset) } static COB_INLINE COB_A_INLINE int -test_digit (const unsigned char ch, int *offset) +test_char_in_range (const char min, const char max, const char ch, int *offset) { - return test_char_cond (isdigit (ch), offset); + return test_char_cond (min <= ch && ch <= max, offset); } static COB_INLINE COB_A_INLINE int -test_char_in_range (const char min, const char max, const char ch, int *offset) +test_digit (const unsigned char ch, int *offset) { - return test_char_cond (min <= ch && ch <= max, offset); +#if 0 /* note: as isdigit is locale-aware (slower and not what we want), we use the range instead */ + return test_char_cond (isdigit (ch), offset); +#else + return test_char_in_range ('0', '9', ch, offset); +#endif } static int test_millenium (const char *date, int *offset, int *millenium) @@ -3914,19 +3922,24 @@ cob_intr_bit_to_char (cob_field *srcfield) cob_field * cob_intr_hex_of (cob_field *srcfield) { - cob_field field; + const char hex_val[] = "0123456789ABCDEF"; + /* FIXME later: srcfield may be of category national - or later bit... */ const size_t size = srcfield->size * 2; - size_t i, j; + cob_field field; COB_FIELD_INIT (size, NULL, &const_alpha_attr); make_field_entry (&field); - for (i = j = 0; i < srcfield->size; ++i) { - char buff[3]; - sprintf (buff, "%02X", srcfield->data[i]); - curr_field->data[j++] = buff[0]; - curr_field->data[j++] = buff[1]; + { + register unsigned char *ret_pos = curr_field->data; + register unsigned char *src_pos = srcfield->data; + const unsigned char *src_end = src_pos + srcfield->size; + + while (src_pos < src_end) { + *ret_pos++ = hex_val[(*src_pos >> 4) & 0xF]; + *ret_pos++ = hex_val[*src_pos++ & 0xF]; + } } return curr_field; } @@ -3937,7 +3950,7 @@ cob_intr_hex_to_char (cob_field *srcfield) cob_field field; const size_t size = srcfield->size / 2; const unsigned char *end = srcfield->data + size * 2; - unsigned char *hex_char, *p; + register unsigned char *hex_char, *p; if (size * 2 != srcfield->size) { /* possibly raise nonfatal exception here -> we only process the valid ones */ @@ -3950,29 +3963,29 @@ cob_intr_hex_to_char (cob_field *srcfield) p = srcfield->data; while (p < end) { - unsigned char src, dst; - src = *p++; - if (src >= 'A' && src <= 'F') { - dst = src - 'A' + 10; - } else if (src >= 'a' && src <= 'f') { - dst = src - 'a' + 10; - } else if (isdigit (src)) { - dst = COB_D2I (src); + unsigned char dst; + if (*p >= '0' && *p <= '9') { + dst = COB_D2I (*p); + } else if (*p >= 'A' && *p <= 'F') { + dst = *p - 'A' + 10; + } else if (*p >= 'a' && *p <= 'f') { + dst = *p - 'a' + 10; } else { dst = 0; cob_set_exception (COB_EC_ARGUMENT_FUNCTION); } + p++; dst *= 16; - src = *p++; - if (src >= 'A' && src <= 'F') { - dst = dst + src - 'A' + 10; - } else if (src >= 'a' && src <= 'f') { - dst = dst + src - 'a' + 10; - } else if (isdigit (src)) { - dst = dst + COB_D2I (src); + if (*p >= '0' && *p <= '9') { + dst = dst + COB_D2I (*p); + } else if (*p >= 'A' && *p <= 'F') { + dst = dst + *p - 'A' + 10; + } else if (*p >= 'a' && *p <= 'f') { + dst = dst + *p - 'a' + 10; } else { cob_set_exception (COB_EC_ARGUMENT_FUNCTION); } + p++; *hex_char++ = dst; } return curr_field; @@ -5900,17 +5913,15 @@ cob_intr_locale_date (const int offset, const int length, int month; int year; #ifdef HAVE_LANGINFO_CODESET - unsigned char *p; - char *deflocale = NULL; + int deflocale = 0; struct tm tstruct; char buff2[128]; #else - unsigned char *p; LCID localeid = LOCALE_USER_DEFAULT; SYSTEMTIME syst; #endif char buff[128]; - char locale_buff[COB_SMALL_BUFF]; + char locale_buff[COB_MINI_BUFF]; #endif cobglobptr->cob_exception_code = 0; @@ -5919,15 +5930,17 @@ cob_intr_locale_date (const int offset, const int length, if (COB_FIELD_IS_NUMERIC (srcfield)) { indate = cob_get_int (srcfield); } else { + unsigned char *p; if (srcfield->size < 8) { goto derror; } p = srcfield->data; indate = 0; for (len = 0; len < 8; ++len, ++p) { - if (isdigit (*p)) { - indate *= 10; - indate += COB_D2I (*p); + /* note: as isdigit is locale-aware (slower and not what we want), + we use a range check instead */ + if (*p >= '0' && *p <= '9') { + indate = indate * 10 + COB_D2I (*p); } else { goto derror; } @@ -5954,16 +5967,15 @@ cob_intr_locale_date (const int offset, const int length, tstruct.tm_mon = month; tstruct.tm_mday = days; if (locale_field) { - if (locale_field->size >= COB_SMALL_BUFF) { + deflocale = cob_field_to_string (locale_field, locale_buff, + COB_MINI_MAX, CCM_NONE); + if (deflocale < 1) { goto derror; } - cob_field_to_string (locale_field, locale_buff, - (size_t)COB_SMALL_MAX); - deflocale = locale_buff; - (void) setlocale (LC_TIME, deflocale); + (void) setlocale (LC_TIME, locale_buff); } memset (buff2, 0, sizeof(buff2)); - snprintf(buff2, sizeof(buff2) - 1, "%s", nl_langinfo(D_FMT)); + snprintf(buff2, sizeof(buff2) - 1, "%s", nl_langinfo (D_FMT)); if (deflocale) { (void) setlocale (LC_ALL, cobglobptr->cob_locale); } @@ -5974,21 +5986,25 @@ cob_intr_locale_date (const int offset, const int length, syst.wMonth = (WORD)month; syst.wDay = (WORD)days; if (locale_field) { - if (locale_field->size >= COB_SMALL_BUFF) { - goto derror; - } - cob_field_to_string (locale_field, locale_buff, - COB_SMALL_MAX); - locale_buff[COB_SMALL_MAX] = 0; /* silence warnings */ + int flen = cob_field_to_string (locale_field, locale_buff, + COB_MINI_MAX, CCM_NONE); +#if 0 /* re-null-terminate last char (first space/comma/...) + of the locale string + -> Simon: Why? We already have it rtrimmed */ + unsigned char *p; for (p = (unsigned char *)locale_buff; *p; ++p) { - if (isalnum(*p) || *p == '_') { + if (isalnum((int)*p) || *p == '_') { continue; } break; } *p = 0; +#endif + if (flen < 1) { + goto derror; + } for (len = 0; len < WINLOCSIZE; ++len) { - if (!strcmp(locale_buff, wintable[len].winlocalename)) { + if (!strcmp (locale_buff, wintable[len].winlocalename)) { localeid = wintable[len].winlocaleid; break; } @@ -6036,9 +6052,10 @@ cob_intr_locale_time (const int offset, const int length, p = srcfield->data; indate = 0; for (len = 0; len < 6; ++len, ++p) { - if (isdigit (*p)) { - indate *= 10; - indate += COB_D2I (*p); + /* note: as isdigit is locale-aware (slower and not what we want), + we use a range check instead */ + if (*p >= '0' && *p <= '9') { + indate = indate * 10 + COB_D2I (*p); } else { goto derror; } @@ -6337,15 +6354,11 @@ cob_intr_lowest_algebraic (cob_field *srcfield) || !COB_FIELD_BINARY_TRUNC (srcfield)) { expo = (cob_uli_t)((COB_FIELD_SIZE (srcfield) * 8U) - 1U); mpz_ui_pow_ui (d1.value, 2UL, expo); - mpz_neg (d1.value, d1.value); - d1.scale = COB_FIELD_SCALE (srcfield); - cob_alloc_field (&d1); - (void)cob_decimal_get_field (&d1, curr_field, 0); - break; + } else { + expo = (cob_uli_t)COB_FIELD_DIGITS (srcfield); + mpz_ui_pow_ui (d1.value, 10UL, expo); + mpz_sub_ui (d1.value, d1.value, 1UL); } - expo = (cob_uli_t)COB_FIELD_DIGITS (srcfield); - mpz_ui_pow_ui (d1.value, 10UL, expo); - mpz_sub_ui (d1.value, d1.value, 1UL); mpz_neg (d1.value, d1.value); d1.scale = COB_FIELD_SCALE (srcfield); cob_alloc_field (&d1); @@ -6415,14 +6428,10 @@ cob_intr_highest_algebraic (cob_field *srcfield) expo--; } mpz_ui_pow_ui (d1.value, 2UL, expo); - mpz_sub_ui (d1.value, d1.value, 1UL); - d1.scale = COB_FIELD_SCALE (srcfield); - cob_alloc_field (&d1); - (void)cob_decimal_get_field (&d1, curr_field, 0); - break; + } else { + expo = (cob_uli_t)COB_FIELD_DIGITS (srcfield); + mpz_ui_pow_ui (d1.value, 10UL, expo); } - expo = (cob_uli_t)COB_FIELD_DIGITS (srcfield); - mpz_ui_pow_ui (d1.value, 10UL, expo); mpz_sub_ui (d1.value, d1.value, 1UL); d1.scale = COB_FIELD_SCALE (srcfield); cob_alloc_field (&d1); @@ -6464,7 +6473,7 @@ cob_intr_locale_compare (const int params, ...) unsigned char *p; unsigned char *p1; unsigned char *p2; - char *deflocale; + int deflocale = 0; size_t size; size_t size2; int ret; @@ -6487,8 +6496,6 @@ cob_intr_locale_compare (const int params, ...) make_field_entry (&field); #ifdef HAVE_STRCOLL - deflocale = NULL; - size = f1->size; size2 = size; for (p = f1->data + size - 1U; p != f1->data; --p) { @@ -6512,14 +6519,14 @@ cob_intr_locale_compare (const int params, ...) memcpy (p2, f2->data, size2); if (locale_field) { - if (!locale_field->size) { + char locale_buff[COB_MINI_BUFF]; + deflocale = cob_field_to_string (locale_field, locale_buff, + COB_MINI_MAX, CCM_NONE); + if (deflocale < 1) { goto derror; } #ifdef HAVE_SETLOCALE - deflocale = cob_malloc (locale_field->size + 1U); - cob_field_to_string (locale_field, deflocale, - (size_t)(locale_field->size + 1U)); - (void) setlocale (LC_COLLATE, deflocale); + (void) setlocale (LC_COLLATE, locale_buff); #else goto derror; #endif @@ -6539,7 +6546,6 @@ cob_intr_locale_compare (const int params, ...) #ifdef HAVE_SETLOCALE if (deflocale) { (void) setlocale (LC_ALL, cobglobptr->cob_locale); - cob_free (deflocale); } #endif @@ -7239,7 +7245,6 @@ cob_init_intrinsic (cob_global *lptr) calc_temp->calc_size = 256; } - /* mpf_init2 length = ceil (log2 (10) * strlen (x)) */ mpz_init2 (cob_mexp, COB_MPZ_DEF); diff --git a/libcob/mlio.c b/libcob/mlio.c index 7c23dbc98..1c44fc39d 100644 --- a/libcob/mlio.c +++ b/libcob/mlio.c @@ -26,9 +26,8 @@ #include #include -/* Force symbol exports */ +/* include internal and external libcob definitions, forcing exports */ #define COB_LIB_EXPIMP -#include "common.h" #include "coblocal.h" #if defined (WITH_XML2) @@ -364,6 +363,8 @@ get_num (cob_field * const f, void * (*strndup_func)(const char *, size_t), char *dp_pos; void *num; + /* TODO: add test cases with PPP99 and 9PPP to verify it works "as expected" */ + /* Initialize attribute for nicely edited version of f */ attr.type = COB_TYPE_NUMERIC_EDITED; attr.flags = COB_FLAG_JUSTIFIED; @@ -1405,6 +1406,7 @@ void xml_parse (cob_field *in, cob_field *encoding, cob_field *validation, COB_UNUSED (in); COB_UNUSED (encoding); COB_UNUSED (validation); + COB_UNUSED (flags); if (first_xml) { first_xml = 0; cob_runtime_warning (_("runtime is not configured to support %s"), diff --git a/libcob/move.c b/libcob/move.c index 27e8827ed..941014111 100644 --- a/libcob/move.c +++ b/libcob/move.c @@ -23,6 +23,7 @@ #include "config.h" #include +#include #include #include #include @@ -34,9 +35,8 @@ #include #endif -/* Force symbol exports */ +/* include internal and external libcob definitions, forcing exports */ #define COB_LIB_EXPIMP -#include "common.h" #include "coblocal.h" static cob_global *cobglobptr; @@ -102,7 +102,7 @@ static const cob_s64_t cob_exp10_ll[19] = { static void store_common_region (cob_field *f, const unsigned char *data, - const size_t size, const int scale) + const size_t size, const int scale, const int verified_data) { const int fsize = (int) COB_FIELD_SIZE (f); unsigned char *fdata = COB_FIELD_DATA (f); @@ -115,29 +115,36 @@ store_common_region (cob_field *f, const unsigned char *data, const int hf2 = fsize + lf2; const int gcf = cob_min_int (hf1, hf2); - /* the target may have leading/trailing additional - zeros are, in rare cases, be out of scale competely; + /* the target may have leading/trailing additional zeroes + and in rare cases, we may be out of scale competely; we pre-set all positions as this saves a bunch of - calculations which outweight the benefits of not + calculations which outweight the benefit of not writing over the data two times */ memset (fdata, '0', fsize); + /* note: skipping zeroes in the source data was tested but + has shown to be slower than copying those along */ + if (gcf > lcf) { - register unsigned char *dst = fdata + hf2 - gcf; - register const unsigned char *end = dst + gcf - lcf; - register const unsigned char *src = data + hf1 - gcf; + if (verified_data) { + memcpy (fdata + hf2 - gcf, data + hf1 - gcf, gcf - lcf); + } else { + register const unsigned char *src = data + hf1 - gcf; + register unsigned char *dst = fdata + hf2 - gcf; + register const unsigned char *end = dst + gcf - lcf; - while (dst < end) { - const char src_data = *src++; + while (dst < end) { + const char src_data = *src++; #if 0 /* seems to be the best result, ..." */ - /* we don't want to set bad data, so - only take the half byte */ - *dst = COB_I2D (COB_D2I (src_data)); + /* we don't want to set bad data, so + only take the half byte */ + *dst = COB_I2D (COB_D2I (src_data)); #else /* but does not match the "expected" MF result, which is: */ - if (src_data == ' ' || src_data == 0) /* already set: *dst = '0'; */ ; - else *dst = COB_I2D (src_data - '0'); + if (src_data == ' ' || src_data == 0) /* already set: *dst = '0'; */ ; + else *dst = COB_I2D (src_data - '0'); #endif - ++dst; + ++dst; + } } } } @@ -242,23 +249,17 @@ cob_binary_mset_uint64 (cob_field *f, cob_u64_t n) static void cob_move_alphanum_to_display (cob_field *f1, cob_field *f2) { - unsigned char *p; - unsigned char *s1; - unsigned char *s2; - unsigned char *e1; - unsigned char *e2; + register unsigned char *s1 = f1->data; + register unsigned char *s2 = COB_FIELD_DATA (f2); + const unsigned char *e1 = s1 + f1->size; + const unsigned char *e2 = s2 + COB_FIELD_SIZE (f2); + const unsigned char dec_pt = COB_MODULE_PTR->decimal_point; + const unsigned char num_sep = COB_MODULE_PTR->numeric_separator; int sign; int count; int size; - unsigned char c; - unsigned char dec_pt; - unsigned char num_sep; /* Initialize */ - s1 = f1->data; - e1 = s1 + f1->size; - s2 = COB_FIELD_DATA (f2); - e2 = s2 + COB_FIELD_SIZE (f2); memset (f2->data, '0', f2->size); /* Skip white spaces */ @@ -276,40 +277,42 @@ cob_move_alphanum_to_display (cob_field *f1, cob_field *f2) } } - dec_pt = COB_MODULE_PTR->decimal_point; - num_sep = COB_MODULE_PTR->numeric_separator; - /* Count the number of digits before decimal point */ count = 0; - for (p = s1; p < e1 && *p != dec_pt; ++p) { - if (isdigit (*p)) { - ++count; + { + register unsigned char *p; + for (p = s1; p < e1 && *p != dec_pt; ++p) { + /* note: as isdigit is locale-aware (slower and not what we want), + we use a range check instead */ + if (*p >= '0' && *p <= '9') { + ++count; + } } } /* Find the start position */ - size = (int) COB_FIELD_SIZE (f2) - COB_FIELD_SCALE(f2); + size = (int) COB_FIELD_SIZE (f2) - COB_FIELD_SCALE (f2); if (count < size) { s2 += size - count; } else { while (count-- > size) { - while (!isdigit (*s1++)) { - ; + while (*s1 < '0' || *s1 > '9') { + s1++; } + s1++; } } /* Move */ count = 0; for (; s1 < e1 && s2 < e2; ++s1) { - c = *s1; - if (isdigit (c)) { - *s2++ = c; - } else if (c == dec_pt) { + if (*s1 >= '0' && *s1 <= '9') { + *s2++ = *s1; + } else if (*s1 == dec_pt) { if (count++ > 0) { goto error; } - } else if (!(isspace (c) || c == num_sep)) { + } else if (!(isspace (*s1) || *s1 == num_sep)) { goto error; } } @@ -325,11 +328,10 @@ cob_move_alphanum_to_display (cob_field *f1, cob_field *f2) static void cob_move_display_to_display (cob_field *f1, cob_field *f2) { - int sign; + const int sign = COB_GET_SIGN (f1); - sign = COB_GET_SIGN (f1); store_common_region (f2, COB_FIELD_DATA (f1), COB_FIELD_SIZE (f1), - COB_FIELD_SCALE (f1)); + COB_FIELD_SCALE (f1), 0); COB_PUT_SIGN (f1, sign); COB_PUT_SIGN (f2, sign); @@ -338,25 +340,22 @@ cob_move_display_to_display (cob_field *f1, cob_field *f2) static void cob_move_display_to_alphanum (cob_field *f1, cob_field *f2) { - unsigned char *data1; - unsigned char *data2; - size_t size1; - size_t size2; - int sign; + unsigned char *data1 = COB_FIELD_DATA (f1); + unsigned char *data2 = f2->data; + const size_t size1 = COB_FIELD_SIZE (f1); + size_t size2 = f2->size; + /* note: can't use the "adjust" variant here as we don't convert to digit; + CHECKME for using a buffer instead of original data or intermediate_move */ + const int sign = COB_GET_SIGN (f1); int diff; int zero_size; - data1 = COB_FIELD_DATA (f1); - size1 = COB_FIELD_SIZE (f1); - sign = COB_GET_SIGN (f1); - if (COB_FIELD_SCALE(f1) < 0) { + if (COB_FIELD_SCALE (f1) < 0) { /* Scaling */ - zero_size = (int)-COB_FIELD_SCALE(f1); + zero_size = (int)-COB_FIELD_SCALE (f1); } else { zero_size = 0; } - data2 = f2->data; - size2 = f2->size; if (COB_FIELD_JUSTIFIED (f2)) { /* Justified right */ if (zero_size) { @@ -429,81 +428,89 @@ cob_move_alphanum_to_alphanum (cob_field *f1, cob_field *f2) } } -/* Packed decimal */ +/* Binary Coded Decimal (BCD) - PACKED-DECIMAL (COMP-3) and COMP-6 */ -static void +void cob_move_display_to_packed (cob_field *f1, cob_field *f2) { - unsigned char *data1; - unsigned char *data2; + unsigned char *data1 = COB_FIELD_DATA (f1); + const int sign = COB_GET_SIGN_ADJUST (f1); + const short scale1 = COB_FIELD_SCALE (f1); + const short scale2 = COB_FIELD_SCALE (f2); + unsigned short digits1; + unsigned short digits2; + register unsigned int i; + unsigned char *p; - size_t digits1; - size_t digits2; - size_t i; - size_t offset; - int sign; - int scale1; - int scale2; - unsigned char n; - - sign = COB_GET_SIGN (f1); - data1 = COB_FIELD_DATA (f1); - digits1 = COB_FIELD_DIGITS (f1); - scale1 = COB_FIELD_SCALE (f1); - data2 = f2->data; - digits2 = COB_FIELD_DIGITS (f2); - scale2 = COB_FIELD_SCALE (f2); - /* Pack string */ - memset (f2->data, 0, f2->size); - if (scale1 != scale2) { - int diff = 0; - if (scale1 < 0 && scale2 < 0) { /* Both have P */ - if (scale1 < scale2) - diff = - scale2; - else - diff = - scale1; - } - if (scale2 < 0) { /* 99PP type */ - digits1 += scale2 + diff; - scale2 = 0; - } else - if (scale2 > digits2) { /* VPP99 type */ - digits2 = scale2 + diff; - scale2 = 0; - } - if (scale1 < 0) { - digits2 += scale1 + diff; - scale1 = 0; - } else - if (scale1 > digits1) { - digits1 = scale1 + diff; - scale1 = 0; - } + /* 99P -> 3 digits, scale -1 --> real digits are less */ + if (scale1 >= 0) { + digits1 = COB_FIELD_DIGITS (f1); + } else { + digits1 = COB_FIELD_DIGITS (f1) + scale1; + } + if (scale2 >= 0) { + digits2 = COB_FIELD_DIGITS (f2); + } else { + digits2 = COB_FIELD_DIGITS (f2) + scale2; } if (COB_FIELD_NO_SIGN_NIBBLE (f2)) { - offset = digits2 % 2; + i = digits2 % 2; } else { - offset = 1 - (digits2 % 2); + i = 1 - (digits2 % 2); } + + /* skip not available positions */ p = data1 + (digits1 - scale1) - (digits2 - scale2); - for (i = offset; i < digits2 + offset; ++i, ++p) { - n = (data1 <= p && p < data1 + digits1 && *p != ' ') ? - COB_D2I (*p) : 0; - if (i % 2 == 0) { - data2[i / 2] = n << 4; + while (p < data1) { + p++; i++; /* note: both p and i are digits */ + } + + /* zero out target, then transfer data */ + memset (f2->data, 0, f2->size); + { + register unsigned char *q = f2->data + i / 2; + const unsigned int i_end = digits2 + 1; + /* FIXME: get rid of that, adjust i_end accordingly and always end at sign byte */ + const unsigned char *p_end = data1 + digits1; + + if ((i % 2) == 1) { + *q++ = COB_D2I (*p++); + i++; + } + /* note: for performance reasons we write "full bytes" only, this means that for COMP-3 + we'll read 1 byte "too much = after" from the DISPLAY data; + it is believed that this won't raise a SIGBUS anywhere, but we will need to "clean" + the half-byte before setting the sign */ + + /* check for necessary loop (until we not need the p_end check) */ + if (i_end - i < (unsigned int)(p_end - p + 1) / 2) { + while (i <= i_end) { + *q = (unsigned char) (*p << 4) /* -> dropping the higher bits = no use in COB_D2I */ + + COB_D2I (*(p + 1)); + q++; + p += 2; + i += 2; + } } else { - data2[i / 2] |= n; + while (p < p_end) { + *q = (unsigned char) (*p << 4) /* -> dropping the higher bits = no use in COB_D2I */ + + COB_D2I (*(p + 1)); + q++; + p += 2; + } } } - COB_PUT_SIGN (f1, sign); + COB_PUT_SIGN_ADJUSTED (f1, sign); + if (COB_FIELD_NO_SIGN_NIBBLE (f2)) { return; } - p = f2->data + f2->size - 1; + + p = f2->data + f2->size - 1; /* TODO: ending at the sign byte means we can drop that */ if (!COB_FIELD_HAVE_SIGN (f2)) { - *p = (*p & 0xF0) | 0x0F; + *p |= 0x0F; } else if (sign < 0) { *p = (*p & 0xF0) | 0x0D; } else { @@ -511,14 +518,21 @@ cob_move_display_to_packed (cob_field *f1, cob_field *f2) } } -static void +void cob_move_packed_to_display (cob_field *f1, cob_field *f2) { - const size_t digits = COB_FIELD_DIGITS (f1); unsigned char buff[COB_MAX_DIGITS + 1]; register unsigned char *b = buff; register unsigned char *d = f1->data; - register unsigned char *d_end = d + f1->size - 1; + unsigned char *d_end = d + f1->size - 1; + const short scale = COB_FIELD_SCALE (f1); + unsigned short digits; + if (scale >= 0) { + digits = COB_FIELD_DIGITS (f1); + } else { + /* 99P -> 3 digits, scale -1 --> real digits are less */ + digits = COB_FIELD_DIGITS (f1) + scale; + } if (COB_FIELD_NO_SIGN_NIBBLE (f1)) { /* Unpack COMP-6 to string */ @@ -532,12 +546,11 @@ cob_move_packed_to_display (cob_field *f1, cob_field *f2) } /* Store */ - store_common_region (f2, buff, digits, COB_FIELD_SCALE (f1)); + store_common_region (f2, buff, digits, COB_FIELD_SCALE (f1), 1); COB_PUT_SIGN (f2, 0); } else { /* Unpack PACKED-DECIMAL / COMP-3 to integer */ const size_t offset = 1 - digits % 2; - int sign; if (offset == 1) { *b++ = COB_I2D (*d++ & 0x0F); } @@ -546,11 +559,10 @@ cob_move_packed_to_display (cob_field *f1, cob_field *f2) *b++ = COB_I2D (*d++ & 0x0F); } *b++ = COB_I2D (*d >> 4); - sign = ((*d & 0x0F) == 0x0D) ? -1 : 1; /* Store */ - store_common_region (f2, buff, digits, COB_FIELD_SCALE (f1)); - COB_PUT_SIGN (f2, sign); + store_common_region (f2, buff, digits, COB_FIELD_SCALE (f1), 1); + COB_PUT_SIGN (f2, ((*d & 0x0F) == 0x0D) ? -1 : 1); } } @@ -592,6 +604,8 @@ cob_move_fp_to_fp (cob_field *src, cob_field *dst) /* Binary integer */ +/* move from one to the other binary field ignoring the scale + --> these must match */ static void cob_move_binary_to_binary (cob_field *f1, cob_field *f2) { @@ -599,21 +613,40 @@ cob_move_binary_to_binary (cob_field *f1, cob_field *f2) cob_u64_t uval; cob_s64_t sval; } ul64; - unsigned int sign; + unsigned int sign = 0; - sign = 0; if (COB_FIELD_HAVE_SIGN (f1)) { ul64.sval = cob_binary_mget_sint64 (f1); if (ul64.sval < 0) { sign = 1; } if (COB_FIELD_BINARY_TRUNC (f2)) { - ul64.sval %= cob_exp10_ll[(int)COB_FIELD_DIGITS(f2)]; + /* while we "ignore" the scale for the value we possibly need + it for adjusting the digits for binary truncation */ + const short scale = COB_FIELD_SCALE (f2); + unsigned short digits; + if (scale >= 0) { + digits = COB_FIELD_DIGITS (f2); + } else { + /* 99P -> 3 digits, scale -1 --> real digits are less */ + digits = COB_FIELD_DIGITS (f2) + scale; + } + ul64.sval %= cob_exp10_ll[digits]; } } else { ul64.uval = cob_binary_mget_uint64 (f1); if (COB_FIELD_BINARY_TRUNC (f2)) { - ul64.uval %= cob_exp10_ll[(int)COB_FIELD_DIGITS(f2)]; + /* while we "ignore" the scale for the value we possibly need + it for adjusting the digits for binary truncation */ + const short scale = COB_FIELD_SCALE (f2); + unsigned short digits; + if (scale >= 0) { + digits = COB_FIELD_DIGITS (f2); + } else { + /* 99P -> 3 digits, scale -1 --> real digits are less */ + digits = COB_FIELD_DIGITS (f2) + scale; + } + ul64.uval %= cob_exp10_ll[digits]; } } if (COB_FIELD_HAVE_SIGN (f2)) { @@ -630,34 +663,67 @@ cob_move_binary_to_binary (cob_field *f1, cob_field *f2) static void cob_move_display_to_binary (cob_field *f1, cob_field *f2) { - unsigned char *data1; + const unsigned char *data1 = COB_FIELD_DATA (f1); + const size_t size1 = COB_FIELD_SIZE (f1); + unsigned short target_digits; cob_u64_t val; size_t i, size; - size_t size1; int sign; - size1 = COB_FIELD_SIZE (f1); - data1 = COB_FIELD_DATA (f1); - sign = COB_GET_SIGN (f1); - /* Get value */ - val = 0; - size = size1 - COB_FIELD_SCALE(f1) + COB_FIELD_SCALE(f2); if (f1->size > 18 || f2->size > sizeof (val)) { /* Large Binary field */ cob_decimal_setget_fld (f1, f2, 0); return; } - for (i = 0; i < size; ++i) { - if (val) { - val *= 10; + + /* Get value */ + val = 0; + size = size1 - COB_FIELD_SCALE (f1) + COB_FIELD_SCALE (f2); + + /* truncate on request - by adjusting start position */ + if (COB_FIELD_BINARY_TRUNC (f2)) { + const short scale = COB_FIELD_SCALE (f2) ; + const unsigned short digits = COB_FIELD_DIGITS (f2) ; + if (scale > digits) { + /* PP9 -> scale 3, but we want only the last "real" digit */ + target_digits = digits; + } else { + /* 9PP -> scale -2, digits 3, we want only the first "real" digit */ + target_digits = scale > 0 ? digits : digits + scale; } - if (i < size1) { - val += COB_D2I (data1[i]); + if (target_digits > size) { + target_digits = (unsigned short)size; } + } else { + target_digits = (unsigned short)size; } - if (COB_FIELD_BINARY_TRUNC (f2)) { - val %= cob_exp10_ll[(int)COB_FIELD_DIGITS(f2)]; + /* Skip leading zeros (and zero-like-data like space/low-value) */ + for (i = size - target_digits; i < size; ++i) { + if (COB_D2I (data1[i]) != 0) { + break; + } + target_digits--; + } + + if (target_digits > 19) { + /* possible overflow - move with GMP */ + int opt = 0; + if (COB_FIELD_BINARY_TRUNC (f2) + && !COB_FIELD_REAL_BINARY (f2)) { + opt = COB_STORE_TRUNC_ON_OVERFLOW; + } + cob_decimal_setget_fld (f1, f2, opt); + return; + } + + sign = COB_GET_SIGN_ADJUST (f1); + for ( ; i < size; ++i) { + if (i < size1) { + val = val * 10 + COB_D2I (data1[i]); + } else { + val *= 10; + } } if (COB_FIELD_HAVE_SIGN (f2)) { @@ -672,7 +738,7 @@ cob_move_display_to_binary (cob_field *f1, cob_field *f2) cob_binary_mset_uint64 (f2, val); } - COB_PUT_SIGN (f1, sign); + COB_PUT_SIGN_ADJUSTED (f1, sign); } static void @@ -681,7 +747,7 @@ cob_move_binary_to_display (cob_field *f1, cob_field *f2) cob_u64_t val; int i; int sign; - char buff[32]; + unsigned char buff[32]; sign = 1; if (f2->size > 18 @@ -689,6 +755,7 @@ cob_move_binary_to_display (cob_field *f1, cob_field *f2) cob_decimal_setget_fld (f1, f2, 0); return; } + /* Get value */ if (COB_FIELD_HAVE_SIGN (f1)) { cob_s64_t val2 = cob_binary_mget_sint64 (f1); @@ -706,13 +773,12 @@ cob_move_binary_to_display (cob_field *f1, cob_field *f2) to be much faster than calling "sprintf (buff, CB_FMT_LLU, val)" */ i = 20; while (val > 0) { - buff[--i] = (char) COB_I2D (val % 10); + buff[--i] = COB_I2D (val % 10); val /= 10; } /* Store */ - store_common_region (f2, (cob_u8_ptr)buff + i, (size_t)20 - i, - COB_FIELD_SCALE (f1)); + store_common_region (f2, buff + i, (size_t)20 - i, COB_FIELD_SCALE (f1), 1); COB_PUT_SIGN (f2, sign); } @@ -725,14 +791,17 @@ cob_move_binary_to_display (cob_field *f1, cob_field *f2) static void cob_move_display_to_edited (cob_field *f1, cob_field *f2) { + register unsigned char *dst = f2->data; + register unsigned char *src; const cob_pic_symbol *p; unsigned char *min = COB_FIELD_DATA (f1); unsigned char *max = min + COB_FIELD_SIZE (f1); - unsigned char *src; - unsigned char *dst = f2->data; unsigned char *end = f2->data + f2->size; unsigned char *decimal_point = NULL; - int sign = COB_GET_SIGN (f1); + /* note: can't use the "adjust" variant here as we don't convert to digit + to explicit keep invalid data "as is"; + CHECKME for using a buffer instead of original data */ + const int sign = COB_GET_SIGN (f1); int neg = (sign < 0) ? 1 : 0; int count = 0; int count_sign = 1; @@ -752,22 +821,17 @@ cob_move_display_to_edited (cob_field *f1, cob_field *f2) unsigned char c; unsigned char sign_symbol = 0; unsigned char curr_symbol = 0; - unsigned char dec_symbol; - unsigned char currency = COB_MODULE_PTR->currency_symbol; + const unsigned char dec_symbol = COB_MODULE_PTR->decimal_point == ',' + ? ',' : '.'; + const unsigned char currency = COB_MODULE_PTR->currency_symbol; int floating_insertion = 0; unsigned char *last_fixed_insertion_pos = NULL; unsigned char last_fixed_insertion_char = '\0'; - if (COB_MODULE_PTR->decimal_point == ',') { - dec_symbol = ','; - } else { - dec_symbol = '.'; - } - - /* Count the number of digit places before decimal point */ + /* Setup counters (only before decimal point) */ /* TO-DO: This is computed in cb_build_picture; add computed results to - cb_field and use those. + cb_field / new overlay cb_field_edited and use those. */ for (p = COB_FIELD_PIC (f2); p && p->symbol; ++p) { c = p->symbol; @@ -794,6 +858,7 @@ cob_move_display_to_edited (cob_field *f1, cob_field *f2) } } + /* now insert data to destination */ src = max - COB_FIELD_SCALE (f1) - count; if(COB_FIELD_PIC (f2) == NULL) { /* There is no PIC present so assume all PIC 9s */ @@ -816,7 +881,7 @@ cob_move_display_to_edited (cob_field *f1, cob_field *f2) case '9': x = (min <= src && src < max) ? *src++ : (src++, '0'); if (x != '0') { - is_zero = suppress_zero = 0; + is_zero = 0; } suppress_zero = 0; trailing_sign = 1; @@ -1080,14 +1145,11 @@ cob_move_edited_to_display (cob_field *f1, cob_field *f2) { unsigned char *p; unsigned char *buff; - const cob_pic_symbol *pic_symbol; size_t i; int sign = 0; int scale = 0; int count = 0; int have_point = 0; - int n; - unsigned char c; unsigned char cp; unsigned char dec_pt; @@ -1127,9 +1189,10 @@ cob_move_edited_to_display (cob_field *f1, cob_field *f2) } /* Count number of digit places after decimal point in case of 'V', 'P' */ if (scale == 0) { + const cob_pic_symbol *pic_symbol; for (pic_symbol = COB_FIELD_PIC (f1); pic_symbol->symbol; ++pic_symbol) { - c = pic_symbol->symbol; - n = pic_symbol->times_repeated; + const unsigned char c = pic_symbol->symbol; + const int n = pic_symbol->times_repeated; if (c == '9' || c == '0' || c == 'Z' || c == '*') { if (have_point) { scale += n; @@ -1150,7 +1213,7 @@ cob_move_edited_to_display (cob_field *f1, cob_field *f2) } /* Store */ - store_common_region (f2, buff, (size_t)(p - buff), scale); + store_common_region (f2, buff, (size_t)(p - buff), scale, 0); COB_PUT_SIGN (f2, sign); cob_free (buff); @@ -1160,20 +1223,16 @@ static void cob_move_alphanum_to_edited (cob_field *f1, cob_field *f2) { const cob_pic_symbol *p; - unsigned char *max; - unsigned char *src; - unsigned char *dst; - int sign; - int n; - unsigned char c; + unsigned char *dst = f2->data; + unsigned char *src = COB_FIELD_DATA (f1); + const unsigned char *max = src + COB_FIELD_SIZE (f1); + /* note: can't use the "adjust" variant here as we don't convert to digit; + CHECKME for using a buffer instead of original data or intermediate_move */ + const int sign = COB_GET_SIGN (f1); - sign = COB_GET_SIGN (f1); - src = COB_FIELD_DATA (f1); - max = src + COB_FIELD_SIZE (f1); - dst = f2->data; for (p = COB_FIELD_PIC (f2); p->symbol; ++p) { - c = p->symbol; - n = p->times_repeated; + const unsigned char c = p->symbol; + int n = p->times_repeated; for (; n > 0; --n) { switch (c) { case 'A': @@ -1193,6 +1252,7 @@ cob_move_alphanum_to_edited (cob_field *f1, cob_field *f2) } } } + COB_PUT_SIGN (f1, sign); } @@ -1206,12 +1266,21 @@ indirect_move (void (*func) (cob_field *src, cob_field *dst), cob_field field; cob_field_attr attr; - COB_FIELD_INIT (size, cob_malloc (size), &attr); - COB_ATTR_INIT (COB_TYPE_NUMERIC_DISPLAY, (unsigned short) size, (short) scale, - COB_FLAG_HAVE_SIGN, NULL); - func (src, &field); - cob_move (&field, dst); - cob_free (field.data); + if (size <= 2 * COB_MAX_DIGITS) { + unsigned char buff[2 * COB_MAX_DIGITS] = { 0 }; + COB_FIELD_INIT (size, buff, &attr); + COB_ATTR_INIT (COB_TYPE_NUMERIC_DISPLAY, (unsigned short) size, (short) scale, + COB_FLAG_HAVE_SIGN, NULL); + func (src, &field); + cob_move (&field, dst); + } else { + COB_FIELD_INIT (size, cob_malloc (size), &attr); + COB_ATTR_INIT (COB_TYPE_NUMERIC_DISPLAY, (unsigned short) size, (short) scale, + COB_FLAG_HAVE_SIGN, NULL); + func (src, &field); + cob_move (&field, dst); + cob_free (field.data); + } } static void @@ -1234,6 +1303,8 @@ cob_move_all (cob_field *src, cob_field *dst) return; } if (!COB_FIELD_IS_NUMERIC (dst)) { + /* note: this also applies to numeric-edited where a MOVE ALL + has to be an alphanumeric MOVE */ temp.attr = &all_display_attr; digcount = dst->size; } else if (src->size == 1) { @@ -1248,9 +1319,12 @@ cob_move_all (cob_field *src, cob_field *dst) temp.size = digcount; temp.data = p; if (src->size == 1) { + /* most common: ALL 0 (or 9 or ...) -> fill data */ memset (p, src->data[0], digcount); } else { + /* possible: ALL 123 -> fill with pieces */ size_t i; + /* TODO: use "doubled memmove" instead */ for (i = 0; i < digcount; ++i) { p[i] = src->data[i % src->size]; } @@ -1267,13 +1341,11 @@ cob_move_all (cob_field *src, cob_field *dst) void cob_move_ibm (void *dst, void *src, const int len) { - char *dest = dst; - char *srce = src; - int i = len; - while(i-- > 0) { - *dest = *srce; - dest++; - srce++; + register char *dest = dst; + register char *srce = src; + const char *end = srce + len; + while (srce != end) { + *dest++ = *srce++; } } @@ -1290,21 +1362,20 @@ cob_init_table (void *tbl, const size_t len, const size_t occ) if (occ < 2) return; do { - memcpy((void*)m, tbl, i); + memcpy ((void*)m, tbl, i); m = m + i; i = i * 2; j = j * 2; } while ((j * 2) < occ); if (j < occ) { - memcpy((void*)m, tbl, len * (occ - j)); + memcpy ((void*)m, tbl, len * (occ - j)); } } void cob_move (cob_field *src, cob_field *dst) { - int opt, src_scl; - size_t src_dig; + int opt; cob_field temp; unsigned char data[2]; @@ -1343,16 +1414,6 @@ cob_move (cob_field *src, cob_field *dst) } } - if (COB_FIELD_SCALE (src) < 0) { - src_dig = COB_FIELD_DIGITS (src) - COB_FIELD_SCALE (src); - src_scl = 0; - } else if (COB_FIELD_SCALE (src) > COB_FIELD_DIGITS (src)) { - src_dig = COB_FIELD_SCALE (src); - src_scl = 0; - } else { - src_dig = COB_FIELD_DIGITS (src); - src_scl = COB_FIELD_SCALE (src); - } /* Elementary move */ switch (COB_FIELD_TYPE (src)) { case COB_TYPE_NUMERIC_DISPLAY: @@ -1384,14 +1445,9 @@ cob_move (cob_field *src, cob_field *dst) if (COB_FIELD_SCALE (src) < 0 || COB_FIELD_SCALE (src) > COB_FIELD_DIGITS (src)) { /* Expand P's */ - if (COB_FIELD_SCALE (src) > COB_FIELD_DIGITS (src)) - src_dig = COB_FIELD_SCALE (src); - else if (COB_FIELD_SCALE (src) < 0) - src_dig = COB_FIELD_DIGITS (src) - COB_FIELD_SCALE (src); - else - src_dig = COB_FIELD_SIZE (src); - indirect_move (cob_move_display_to_display, src, dst, src_dig, - cob_max_int (0, (int)COB_FIELD_SCALE(src))); + indirect_move (cob_move_display_to_display, src, dst, + (size_t)cob_max_int (COB_FIELD_DIGITS (src), COB_FIELD_SCALE (src)), + cob_max_int (0, COB_FIELD_SCALE (src))); return; } else { cob_move_alphanum_to_edited (src, dst); @@ -1409,9 +1465,26 @@ cob_move (cob_field *src, cob_field *dst) return; case COB_TYPE_NUMERIC_BINARY: case COB_TYPE_NUMERIC_COMP5: +#if 0 /* indirect move is more expensive, check it for improvements */ + if (opt == COB_STORE_TRUNC_ON_OVERFLOW) { + /* note: "dst" is only possible when binary-trunc */ + indirect_move (cob_move_packed_to_display, src, dst, + COB_FIELD_DIGITS (dst), COB_FIELD_SCALE (dst)); + } else { + indirect_move (cob_move_packed_to_display, src, dst, + COB_FIELD_DIGITS (src), COB_FIELD_SCALE (src)); + } +#else cob_decimal_setget_fld (src, dst, opt); +#endif return; case COB_TYPE_NUMERIC_PACKED: + /* TODO: add handling of negative scales to cob_move_bcd */ + if (COB_FIELD_SCALE (src) >= 0 + && COB_FIELD_SCALE (dst) >= 0) { + cob_move_bcd (src, dst); + return; + } case COB_TYPE_NUMERIC_DOUBLE: case COB_TYPE_NUMERIC_FLOAT: case COB_TYPE_NUMERIC_L_DOUBLE: @@ -1424,7 +1497,8 @@ cob_move (cob_field *src, cob_field *dst) return; default: indirect_move (cob_move_packed_to_display, src, dst, - COB_FIELD_DIGITS (src), COB_FIELD_SCALE (src)); + (size_t)(COB_FIELD_DIGITS(src)), + COB_FIELD_SCALE (src)); return; } @@ -1433,29 +1507,81 @@ cob_move (cob_field *src, cob_field *dst) switch (COB_FIELD_TYPE (dst)) { case COB_TYPE_NUMERIC_BINARY: case COB_TYPE_NUMERIC_COMP5: - if (COB_FIELD_SCALE(src) == COB_FIELD_SCALE(dst)) { - cob_move_binary_to_binary (src, dst); + { + const short src_scale = COB_FIELD_SCALE (src); + const short dst_scale = COB_FIELD_SCALE (dst); + unsigned short digits; + if (src_scale == dst_scale) { + cob_move_binary_to_binary (src, dst); + return; + } + if (src_scale >= 0) { + digits = COB_FIELD_DIGITS (src); + } else { + /* 99P -> 3 digits, scale -1 --> real digits are less */ + digits = COB_FIELD_DIGITS (src) + src_scale; + } + if (digits < 19) { + if (dst_scale <= 0) { + const short digits_adjust = dst_scale - src_scale; + if (digits_adjust < 0) { + cob_field field; + cob_s64_t val = cob_binary_mget_sint64 (src); + val /= cob_exp10_ll[-digits_adjust]; /* adjust value to match target scale */ + COB_FIELD_INIT (sizeof (cob_s64_t), (unsigned char *)&val, &const_binll_attr); + cob_move_binary_to_binary (&field, dst); + return; + } + if (digits + digits_adjust < 19) { + cob_field field; + cob_s64_t val = cob_binary_mget_sint64 (src); + val *= cob_exp10_ll[digits_adjust]; /* adjust value to match target scale */ + COB_FIELD_INIT (sizeof (cob_s64_t), (unsigned char *)&val, &const_binll_attr); + cob_move_binary_to_binary (&field, dst); + return; + } +#if 0 /* indirect_move is much more expensive, check it for improvements */ + } else { + if (opt == COB_STORE_TRUNC_ON_OVERFLOW) { + /* note: "dst" is only possible when binary-trunc */ + indirect_move (cob_move_binary_to_display, src, dst, + COB_FIELD_DIGITS (dst), COB_FIELD_SCALE (dst)); + } else { + indirect_move (cob_move_binary_to_display, src, dst, + COB_FIELD_DIGITS (src), COB_FIELD_SCALE (src)); + } +#endif + } + } + cob_decimal_setget_fld (src, dst, opt); return; } - cob_decimal_setget_fld (src, dst, opt); - return; case COB_TYPE_NUMERIC_DISPLAY: cob_move_binary_to_display (src, dst); return; case COB_TYPE_NUMERIC_PACKED: - if (COB_FIELD_SCALE (src) == 0) { - cob_set_packed_int (dst, cob_get_int (src)); - return; -#if 0 /* TODO: get integer with relevant scale, then set */ - } else { - int n; - if (get_with_scale_adjust (src, COB_FIELD_SCALE (dst), &n) != 0) { - cob_set_packed_int (dst, n); - return; + { + const short src_digits = COB_FIELD_DIGITS (src); + if (src_digits < 19) { + const short src_scale = COB_FIELD_SCALE (src); + const short dst_scale = COB_FIELD_SCALE (dst); + const short diff_scale = src_scale - dst_scale; + if (src_digits - diff_scale < 19) { + cob_s64_t val = cob_binary_mget_sint64 (src); + if (diff_scale <= 0) { + val *= cob_exp10_ll[-diff_scale]; + } else { + val /= cob_exp10_ll[diff_scale]; + } + if (val >= INT_MIN && val <= INT_MAX) { + cob_set_packed_int (dst, (int)val); + return; + } + } } -#endif } - /* Fall through */ + cob_decimal_setget_fld (src, dst, 0); + return; case COB_TYPE_NUMERIC_DOUBLE: case COB_TYPE_NUMERIC_FLOAT: case COB_TYPE_NUMERIC_L_DOUBLE: @@ -1468,11 +1594,13 @@ cob_move (cob_field *src, cob_field *dst) return; case COB_TYPE_NUMERIC_EDITED: indirect_move (cob_move_binary_to_display, src, dst, - (size_t)COB_MAX_DIGITS, COB_FIELD_SCALE(src)); + (size_t)COB_MAX_DIGITS, + COB_FIELD_SCALE (src)); return; default: indirect_move (cob_move_binary_to_display, src, dst, - src_dig, src_scl); + (size_t)(COB_FIELD_DIGITS(src)), + COB_FIELD_SCALE (src)); return; } @@ -1485,6 +1613,10 @@ cob_move (cob_field *src, cob_field *dst) case COB_TYPE_NUMERIC_BINARY: case COB_TYPE_NUMERIC_COMP5: case COB_TYPE_NUMERIC_EDITED: + indirect_move (cob_move_edited_to_display, src, dst, + (size_t)(2 * COB_MAX_DIGITS), + COB_MAX_DIGITS); + return; case COB_TYPE_NUMERIC_FLOAT: case COB_TYPE_NUMERIC_DOUBLE: case COB_TYPE_NUMERIC_L_DOUBLE: @@ -1493,8 +1625,7 @@ cob_move (cob_field *src, cob_field *dst) case COB_TYPE_NUMERIC_FP_BIN128: case COB_TYPE_NUMERIC_FP_DEC64: case COB_TYPE_NUMERIC_FP_DEC128: - indirect_move (cob_move_edited_to_display, src, dst, - (size_t)(2 * COB_MAX_DIGITS), COB_MAX_DIGITS); + cob_decimal_setget_fld (src, dst, 0); return; case COB_TYPE_ALPHANUMERIC_EDITED: cob_move_alphanum_to_edited (src, dst); @@ -1641,6 +1772,10 @@ cob_move (cob_field *src, cob_field *dst) case COB_TYPE_NUMERIC_BINARY: case COB_TYPE_NUMERIC_COMP5: case COB_TYPE_NUMERIC_EDITED: + indirect_move (cob_move_alphanum_to_display, src, dst, + (size_t)(2 * COB_MAX_DIGITS), + COB_MAX_DIGITS); + return; case COB_TYPE_NUMERIC_FLOAT: case COB_TYPE_NUMERIC_DOUBLE: case COB_TYPE_NUMERIC_L_DOUBLE: @@ -1649,8 +1784,7 @@ cob_move (cob_field *src, cob_field *dst) case COB_TYPE_NUMERIC_FP_BIN128: case COB_TYPE_NUMERIC_FP_DEC64: case COB_TYPE_NUMERIC_FP_DEC128: - indirect_move (cob_move_alphanum_to_display, src, dst, - (size_t)(2 * COB_MAX_DIGITS), COB_MAX_DIGITS); + cob_decimal_setget_fld (src, dst, 0); return; case COB_TYPE_ALPHANUMERIC_EDITED: cob_move_alphanum_to_edited (src, dst); @@ -1815,6 +1949,7 @@ cob_packed_get_int (cob_field *field) static cob_s64_t packed_get_long_long (cob_field *field) { + const short scale = COB_FIELD_SCALE (field); register cob_s64_t val; register unsigned char *d = field->data; register unsigned char *d_end = d + field->size - 1; @@ -1853,13 +1988,10 @@ packed_get_long_long (cob_field *field) val = -val; } } - if (COB_FIELD_SCALE (field) < 0) { - val *= cob_exp10_ll[(int)-COB_FIELD_SCALE (field)]; + if (scale < 0) { + val *= cob_exp10_ll[-scale]; } else { - int inc; - for (inc = COB_FIELD_SCALE (field); inc > 0 && val; --inc) { - val /= 10; - } + val /= cob_exp10_ll[scale]; } return val; } @@ -1867,16 +1999,14 @@ packed_get_long_long (cob_field *field) static int cob_display_get_int (cob_field *f) { - unsigned char *data; - size_t size; + const short scale = COB_FIELD_SCALE (f); + const unsigned char *data = COB_FIELD_DATA (f); + const int sign = COB_GET_SIGN_ADJUST (f); + size_t size = COB_FIELD_SIZE (f); size_t i; int val = 0; - int sign; - size = COB_FIELD_SIZE (f); - data = COB_FIELD_DATA (f); - sign = COB_GET_SIGN (f); - /* Skip preceding zeros (and zero-like-data like space/low-value) */ + /* Skip leading zeros (and zero-like-data like space/low-value) */ for (i = 0; i < size; ++i) { if (COB_D2I (data[i]) != 0) { break; @@ -1884,13 +2014,13 @@ cob_display_get_int (cob_field *f) } /* Get value */ - if (COB_FIELD_SCALE(f) < 0) { + if (scale < 0) { for (; i < size; ++i) { val = val * 10 + COB_D2I (data[i]); } - val *= cob_exp10[(int)-COB_FIELD_SCALE(f)]; + val *= cob_exp10[-scale]; } else { - size -= COB_FIELD_SCALE(f); + size -= scale; for (; i < size; ++i) { val = val * 10 + COB_D2I (data[i]); } @@ -1899,23 +2029,21 @@ cob_display_get_int (cob_field *f) val = -val; } - COB_PUT_SIGN (f, sign); + COB_PUT_SIGN_ADJUSTED (f, sign); return val; } static cob_s64_t display_get_long_long (cob_field *f) { - unsigned char *data; - size_t size; + const short scale = COB_FIELD_SCALE (f); + const unsigned char *data = COB_FIELD_DATA (f); + const int sign = COB_GET_SIGN_ADJUST (f); + size_t size = COB_FIELD_SIZE (f); size_t i; cob_s64_t val = 0; - int sign; - size = COB_FIELD_SIZE (f); - data = COB_FIELD_DATA (f); - sign = COB_GET_SIGN (f); - /* Skip preceding zeros */ + /* Skip leading zeros (and zero-like-data like space/low-value) */ for (i = 0; i < size; ++i) { if (COB_D2I (data[i]) != 0) { break; @@ -1923,13 +2051,13 @@ display_get_long_long (cob_field *f) } /* Get value */ - if (COB_FIELD_SCALE(f) < 0) { + if (scale < 0) { for (; i < size; ++i) { val = val * 10 + COB_D2I (data[i]); } - val *= cob_exp10_ll[(int)-COB_FIELD_SCALE(f)]; + val *= cob_exp10_ll[-scale]; } else { - size -= COB_FIELD_SCALE(f); + size -= scale; for (; i < size; ++i) { val = val * 10 + COB_D2I (data[i]); } @@ -1938,7 +2066,7 @@ display_get_long_long (cob_field *f) val = -val; } - COB_PUT_SIGN (f, sign); + COB_PUT_SIGN_ADJUSTED (f, sign); return val; } @@ -1963,15 +2091,14 @@ cob_get_int (cob_field *f) case COB_TYPE_NUMERIC_COMP5: { cob_s64_t val = cob_binary_mget_sint64 (f); - if (COB_FIELD_SCALE (f) < 0) { - val *= cob_exp10_ll[(int)-COB_FIELD_SCALE (f)]; - } else { - int inc; - for (inc = COB_FIELD_SCALE (f); inc > 0 && val; --inc) { - val /= 10; - } + const short scale = COB_FIELD_SCALE (f); + if (scale == 0) { + return (int)val; /* 999 */ } - return (int)val; + if (scale > 0) { + return (int)(val / cob_exp10_ll[scale]); /* 999v9 */ + } + return (int)(val * cob_exp10_ll[-scale]); /* 999PP */ } default: { @@ -1996,15 +2123,14 @@ cob_get_llint (cob_field *f) case COB_TYPE_NUMERIC_COMP5: { cob_s64_t val = cob_binary_mget_sint64 (f); - if (COB_FIELD_SCALE (f) < 0) { - val *= cob_exp10_ll[(int)-COB_FIELD_SCALE (f)]; - } else { - int inc; - for (inc = COB_FIELD_SCALE (f); inc > 0 && val; --inc) { - val /= 10; - } + const short scale = COB_FIELD_SCALE (f); + if (scale == 0) { + return val; /* 999 */ } - return val; + if (scale > 0) { + return val / cob_exp10_ll[scale]; /* 999v9 */ + } + return val * cob_exp10_ll[-scale]; /* 999PP */ } case COB_TYPE_NUMERIC_PACKED: return packed_get_long_long (f); @@ -2619,14 +2745,16 @@ cob_get_s64_pic9 (void *mem, int len) int sign = 1; while (len-- > 1) { - if (isdigit (*p)) { + /* note: as isdigit is locale-aware (slower and not what we want), + we use a range check instead */ + if (*p >= '0' && *p <= '9') { val = val * 10 + COB_D2I (*p); } else if (*p == '-') { sign = -1; } p++; } - if (isdigit (*p)) { + if (*p >= '0' && *p <= '9') { val = val * 10 + COB_D2I (*p); } else if (*p == '-') { sign = -1; @@ -2664,8 +2792,11 @@ cob_get_s64_pic9 (void *mem, int len) } val = val * 10 + COB_D2I (*p); #endif - } else if (isdigit (*p & 0x3F)) { - val = val * 10 + COB_D2I (*p); + } else { + cob_u8_t dig_part = *p & 0x3F; + if (dig_part >= '0' && dig_part <= '9') { + val = val * 10 + COB_D2I (dig_part); + } if (*p & 0x40) { sign = -1; } @@ -2756,7 +2887,7 @@ cob_get_picx (void *cbl_data, size_t len, void *char_field, size_t num_chars) } void -cob_put_picx( void *cbl_data, size_t len, void *string) +cob_put_picx (void *cbl_data, size_t len, void *string) { size_t i, j; cob_u8_t *p = cbl_data; diff --git a/libcob/numeric.c b/libcob/numeric.c index 0b85c00e9..869426816 100644 --- a/libcob/numeric.c +++ b/libcob/numeric.c @@ -1,6 +1,7 @@ /* Copyright (C) 2001-2012, 2014-2023 Free Software Foundation, Inc. - Written by Keisuke Nishida, Roger While, Simon Sobisch, Ron Norman + Written by Keisuke Nishida, Roger While, Simon Sobisch, Ron Norman, + Chuck Haatveet This file is part of GnuCOBOL. @@ -52,8 +53,7 @@ #endif #endif -/* Force symbol exports, include decimal definitions */ -#define COB_LIB_EXPIMP +/* include decimal definitions, allowing their use in common.h later */ #ifdef HAVE_GMP_H #include #elif defined HAVE_MPIR_H @@ -61,7 +61,9 @@ #else #error either HAVE_GMP_H or HAVE_MPIR_H needs to be defined #endif -#include "common.h" + +/* include internal and external libcob definitions, forcing exports */ +#define COB_LIB_EXPIMP #include "coblocal.h" @@ -351,12 +353,20 @@ cob_decimal_print (cob_decimal *d, FILE *fp) /* Get power of 10 as mpz_t */ static COB_INLINE COB_A_INLINE void -cob_pow_10 (mpz_t mexp, int n) +cob_pow_10 (mpz_t mexp, unsigned int n) { - if (n >= 0 && n <= COB_MAX_BINARY) { + if (n <= COB_MAX_BINARY) { mpz_set (mexp, cob_mpze10[n]); } else { - mpz_ui_pow_ui (mexp, 10UL, (cob_uli_t)n); + /* bigger values are needed, + for example in FUNCTION RANDOM test (999) + and with extreme huge value (6499) for test + "FLOAT-DECIMALL w/o SIZE ERROR" to get huge + FD32 values with the right scale */ + /* TODO: add artificial limit with raising ON SIZE ERROR + as we otherwise run into an abort directly in GMP + for _real huge_ numbers */ + mpz_ui_pow_ui (mexp, 10UL, n); } } @@ -508,8 +518,9 @@ cob_decimal_get_ieee64dec (cob_decimal *d, cob_field *f, const int opt) return cobglobptr->cob_exception_code; } for ( ; ; ) { - if (d->scale < -369) + if (d->scale < -369) { break; + } mpz_tdiv_q_ui (d->value, d->value, 10UL); d->scale--; if (mpz_cmpabs (d->value, cob_mpz_ten16m1) < 0) { @@ -625,8 +636,9 @@ cob_decimal_get_ieee128dec (cob_decimal *d, cob_field *f, const int opt) return cobglobptr->cob_exception_code; } for ( ; ; ) { - if (d->scale < -6111) + if (d->scale < -6111) { break; + } mpz_tdiv_q_ui (d->value, d->value, 10UL); d->scale--; if (mpz_cmpabs (d->value, cob_mpz_ten34m1) < 0) { @@ -749,11 +761,12 @@ cob_decimal_set_mpf_core (cob_decimal *d, const mpf_t src) } len -= scale; + if (len >= 0) { d->scale = len; } else { - cob_mul_by_pow_10 (d->value, -len); d->scale = 0; + cob_mul_by_pow_10 (d->value, -len); } } @@ -771,10 +784,10 @@ cob_decimal_set_mpf (cob_decimal *d, const mpf_t src) void cob_decimal_get_mpf (mpf_t dst, const cob_decimal *d) { - cob_sli_t scale; + const cob_sli_t scale = d->scale; mpf_set_z (dst, d->value); - scale = d->scale; + if (scale < 0) { cob_pow_10 (cob_mexp, (cob_uli_t)-scale); mpf_set_z (cob_mpft_get, cob_mexp); @@ -1023,6 +1036,7 @@ cob_decimal_set_packed (cob_decimal *d, cob_field *f) register unsigned char *p, *endp; cob_uli_t byteval; int digits, sign, nibtest; + const short scale = COB_FIELD_SCALE (f); p = f->data; if (COB_FIELD_NO_SIGN_NIBBLE (f)) { @@ -1035,11 +1049,30 @@ cob_decimal_set_packed (cob_decimal *d, cob_field *f) nibtest = 0; } - digits = COB_FIELD_DIGITS (f); + if (scale >= 0) { + digits = COB_FIELD_DIGITS (f); + } else { + /* 99P -> 3 digits, scale -1 */ + digits = COB_FIELD_DIGITS (f) + scale; + } if (digits % 2 == nibtest) { byteval = *p++ & 0x0F; + if (byteval == 0) { + /* Skip leading ZEROs */ + while (p < endp + && *p == 0x00) { + digits -= 2; + p++; + } + } } else { byteval = 0; + /* Skip leading ZEROs */ + while (p < endp + && *p == 0x00) { + digits -= 2; + p++; + } } if (byteval == 0) { while (p < endp @@ -1106,18 +1139,18 @@ cob_decimal_set_packed (cob_decimal *d, cob_field *f) } /* get the numeric value from the given decimal and store it in the - specified field (or, depending on opt, set overflow exception and return - with the field unchanged) */ + specified BCD field (or, depending on opt, set overflow exception and return + with the field unchanged); + note: the scale is ignored so has to be aligned up-front */ static int cob_decimal_get_packed (cob_decimal *d, cob_field *f, const int opt) { char buff[COB_MAX_BINARY * 2]; - register unsigned char *p, *q; + register unsigned char *p; unsigned char *data; - size_t size; - int i, diff, last; const int sign = mpz_sgn (d->value); - int digits; + unsigned int size, diff; /* packed fields are 38 digits max */ + unsigned short digits; /* check for value zero (allows early exit) and handle sign */ if (sign == 0) { @@ -1128,51 +1161,87 @@ cob_decimal_get_packed (cob_decimal *d, cob_field *f, const int opt) mpz_abs (d->value, d->value); } - /* Build string, note: we can't check the decimal size with - mpz_sizeinbase, as its result is "either exact or one too big" */ - digits = COB_FIELD_DIGITS (f); + { + const short scale = COB_FIELD_SCALE (f); + if (scale >= 0) { + digits = COB_FIELD_DIGITS (f); + } else { + /* 99P -> 3 digits, scale -1 --> real digits are less */ + digits = COB_FIELD_DIGITS (f) + scale; + } + } + + /* Build string, note: we can't check the decimal size with mpz_sizeinbase, + as its result is "either exact or one too big" (for base != 2); + using gmp_snprintf to get both the string and the length was also + tested - and found to be much slower than the following code */ /* get divisor that would overflow */ cob_pow_10 (cob_mexp, digits); /* check if it is >= what we have */ if (mpz_cmp (d->value, cob_mexp) >= 0) { /* Overflow */ - cob_set_exception (COB_EC_SIZE_OVERFLOW); - - /* If the statement has ON SIZE ERROR or NOT ON SIZE ERROR, - then throw an exception */ - if (opt & COB_STORE_KEEP_ON_OVERFLOW) { - return cobglobptr->cob_exception_code; + if ((opt & COB_STORE_NO_SIZE_ERROR) == 0) { + cob_set_exception (COB_EC_SIZE_OVERFLOW); + /* If the statement has ON SIZE ERROR, then throw + an exception, leaving the target unchanged */ + if (opt & COB_STORE_KEEP_ON_OVERFLOW) { + return cobglobptr->cob_exception_code; + } } /* Other size, truncate digits, using the remainder */ mpz_tdiv_r (cob_mexp, d->value, cob_mexp); + /* integer setting, if possible */ + if (mpz_fits_sint_p (cob_mexp)) { + const signed int val = mpz_get_si (cob_mexp) * sign; + cob_set_packed_int (f, val); + return 0; + } + /* get truncated digits as string */ (void) mpz_get_str (buff, 10, cob_mexp); - size = digits; - diff = 0; + /* note: truncation may lead to 100012 be changed to 00012 + in which case mpz_get_str provides us with 12 */ } else { - /* No overflow, so get string data and fill with zero */ + /* integer setting, if possible */ + if (mpz_fits_sint_p (d->value)) { + const signed int val = mpz_get_si (d->value) * sign; + cob_set_packed_int (f, val); + return 0; + } + + /* No overflow, so get string data as-is */ (void) mpz_get_str (buff, 10, d->value); - size = strlen (buff); - diff = (int)(digits - size); } - q = (unsigned char *)buff; - /* Store number */ + /* zero-out memory, necessary as we skip leading zeroes */ data = f->data; memset (data, 0, f->size); + + /* calculate starting half-byte */ + size = (unsigned int) strlen (buff); + diff = (unsigned int) digits - size; + if (COB_FIELD_NO_SIGN_NIBBLE (f)) { p = data + ((digits - 1) / 2) - ((size - 1) / 2); - diff = (int)(size % 2); + diff = (size % 2); } else { p = data + (digits / 2) - (size / 2); - diff = 1 - (int)(size % 2); + diff = 1 - (size % 2); } - last = (int)(size + diff); - for (i = diff; i < last; i++) { - if (i % 2 == 0) { - *p = (unsigned char) (COB_D2I(*q++) << 4); - } else { - *p++ |= COB_D2I(*q++); + size += diff; + /* set data starting from first half-byte with data until end */ + { + register unsigned char *q = (unsigned char *)buff; + register unsigned int i = diff; + + if ((i % 2) == 1) { + *p++ += COB_D2I (*q++); + i++; + } + while (i < size) { + *p++ = (unsigned char) (*q << 4) /* -> dropping the higher bits = no use in COB_D2I */ + + COB_D2I (*(q + 1)); + q += 2; i += 2; } } @@ -1180,29 +1249,35 @@ cob_decimal_get_packed (cob_decimal *d, cob_field *f, const int opt) return 0; } - p = f->data + f->size - 1; + /* add half-byte for sign, + note: we can directly use |= as we set the last half-bte to the trailing low-value + we got from mpz_get_str above */ + p = data + f->size - 1; if (!COB_FIELD_HAVE_SIGN (f)) { - *p = (*p & 0xF0U) | 0x0FU; + *p |= 0x0F; } else if (sign == -1) { - *p = (*p & 0xF0U) | 0x0DU; + *p |= 0x0D; } else { - *p = (*p & 0xF0U) | 0x0CU; + *p |= 0x0C; } return 0; } +/* set the specified BCD field 'f' to the given integer 'val'; + note: the scale is ignored so has to be aligned up-front */ void cob_set_packed_int (cob_field *f, const int val) { - unsigned char *p; + register unsigned char *p; + register cob_u32_t n; int sign; - cob_u32_t n; if (val == 0) { cob_set_packed_zero (f); return; } + if (val < 0) { n = (cob_u32_t)-val; sign = -1; @@ -1210,31 +1285,48 @@ cob_set_packed_int (cob_field *f, const int val) n = (cob_u32_t)val; sign = 1; } + + /* zero out storage; necessary as we stop below when reaching leading zero */ memset (f->data, 0, f->size); + + /* set last byte (half-byte digit, half-byte sign */ p = f->data + f->size - 1; if (!COB_FIELD_NO_SIGN_NIBBLE (f)) { *p = (n % 10) << 4; if (!COB_FIELD_HAVE_SIGN (f)) { - *p |= 0x0FU; + *p |= 0x0F; } else if (sign == -1) { - *p |= 0x0DU; + *p |= 0x0D; } else { - *p |= 0x0CU; + *p |= 0x0C; } n /= 10; p--; } + + /* set packed digits from end to front */ for (; n && p >= f->data; n /= 100, p--) { *p = packed_bytes[n % 100]; } - if (COB_FIELD_NO_SIGN_NIBBLE (f)) { - if ((COB_FIELD_DIGITS(f) % 2) == 1) { + + { + const short scale = COB_FIELD_SCALE (f); + short digits; + if (scale >= 0) { + digits = COB_FIELD_DIGITS (f); + } else { + /* 99P -> 3 digits, scale -1 --> real digits are less */ + digits = COB_FIELD_DIGITS (f) + scale; + } + if (COB_FIELD_NO_SIGN_NIBBLE (f)) { + if ((digits % 2) == 1) { + *(f->data) &= 0x0FU; + } + return; + } + if ((digits % 2) == 0) { *(f->data) &= 0x0FU; } - return; - } - if ((COB_FIELD_DIGITS(f) % 2) == 0) { - *(f->data) &= 0x0FU; } } @@ -1245,7 +1337,7 @@ cob_decimal_set_display (cob_decimal *d, cob_field *f) { register unsigned char *data = COB_FIELD_DATA (f); register size_t size = COB_FIELD_SIZE (f); - int sign; + const int sign = COB_GET_SIGN_ADJUST (f); /* TODO: document special cases here */ if (*data == 255) { @@ -1260,8 +1352,6 @@ cob_decimal_set_display (cob_decimal *d, cob_field *f) return; } - sign = COB_GET_SIGN (f); - /* Skip leading zeros (also invalid space/low-value) */ while (size > 1 && (COB_D2I (*data) == 0)) { size--; @@ -1271,7 +1361,8 @@ cob_decimal_set_display (cob_decimal *d, cob_field *f) /* Set value */ if (size < MAX_LI_DIGITS_PLUS_1) { - /* note: we skipped leading zeros above, so n > 0 afterwards */ + /* note: we skipped leading zeros above, so either + "n > 0" " or "size = 0" afterwards */ register cob_uli_t n = COB_D2I (*data); data++; while (--size) { @@ -1300,35 +1391,46 @@ cob_decimal_set_display (cob_decimal *d, cob_field *f) } *pp = 0; } else { - /* bigger fields _must_ be _internal_ so there's no - need to handle invalid data via COB_D2I + COB_I2D - and we can copy as-is */ + /* bigger fields _must_ be _internal_ so there's no need to handle + invalid data via COB_D2I + COB_I2D and we can copy as-is */ memcpy (buff, data, size); + /* still we may need to unpunch the sign, which in this internal + case will always be at the last digit */ + if (sign == -1) { + char *p = buff + size - 1; + *p = COB_I2D (COB_D2I (*p)); + } buff[size] = 0; } mpz_set_str (d->value, (char *)buff, 10); } else { - /* Note: we get very seldom get here, commonly for - computations with functions like cob_intr_variance; - these fields _must_ be _internal_ so there's no - need to handle invalid data via COB_D2I + COB_I2D - and we can copy as-is; + /* Note: we get very seldom get here, commonly for computations with + intrinsic functions like cob_intr_variance; + these fields _must_ be _internal_ so there's no need to handle + invalid data via COB_D2I + COB_I2D and we can copy as-is; this code has shown to be faster than mpz ui multiplication */ char *buff = cob_fast_malloc (size + 1U); memcpy (buff, data, size); + /* still we may need to unpunch the sign, which in this internal + case will always be at the last digit */ + if (sign == -1) { + char *p = buff + size - 1; + *p = COB_I2D (COB_D2I (*p)); + } buff[size] = 0; mpz_set_str (d->value, buff, 10); cob_free (buff); } /* Set sign and scale */ - if (sign == -1) { + if (sign < 0) { mpz_neg (d->value, d->value); } d->scale = COB_FIELD_SCALE (f); - COB_PUT_SIGN (f, sign); + + COB_PUT_SIGN_ADJUSTED (f, sign); } static int @@ -1358,13 +1460,15 @@ cob_decimal_get_display (cob_decimal *d, cob_field *f, const int opt) const size_t diff = (size_t)fsize - size; if (diff < 0) { /* Overflow */ - cob_set_exception (COB_EC_SIZE_OVERFLOW); + if ((opt & COB_STORE_NO_SIZE_ERROR) == 0) { + cob_set_exception (COB_EC_SIZE_OVERFLOW); - /* If the statement has ON SIZE ERROR or NOT ON SIZE ERROR, - then throw an exception */ - if (opt & COB_STORE_KEEP_ON_OVERFLOW) { - cob_gmp_free (p); - return cobglobptr->cob_exception_code; + /* If the statement has ON SIZE ERROR, then throw + an exception, leaving the target unchanged */ + if (opt & COB_STORE_KEEP_ON_OVERFLOW) { + cob_gmp_free (p); + return cobglobptr->cob_exception_code; + } } /* Other size, truncate digits */ @@ -1385,21 +1489,27 @@ cob_decimal_get_display (cob_decimal *d, cob_field *f, const int opt) /* check if it is >= what we have */ if (mpz_cmp (d->value, cob_mexp) >= 0) { /* Overflow */ - cob_set_exception (COB_EC_SIZE_OVERFLOW); + if ((opt & COB_STORE_NO_SIZE_ERROR) == 0) { + cob_set_exception (COB_EC_SIZE_OVERFLOW); - /* If the statement has ON SIZE ERROR or NOT ON SIZE ERROR, - then throw an exception */ - if (opt & COB_STORE_KEEP_ON_OVERFLOW) { - return cobglobptr->cob_exception_code; + /* If the statement has ON SIZE ERROR, then throw + an exception, leaving the target unchanged */ + if (opt & COB_STORE_KEEP_ON_OVERFLOW) { + return cobglobptr->cob_exception_code; + } } /* Other size, truncate digits, using the remainder */ mpz_tdiv_r (cob_mexp, d->value, cob_mexp); (void) mpz_get_str (buff, 10, cob_mexp); - memcpy (data, buff, fsize); + /* note: truncation may lead to 100012 be changed to 00012 + in which case mpz_get_str provides us with 12 */ } else { /* No overflow, so get string data and fill with zero */ - size_t size, diff; (void) mpz_get_str (buff, 10, d->value); + } + /* copy and fill left with zero */ + { + size_t size, diff; size = strlen (buff); diff = (size_t)fsize - size; memset (data, '0', diff); @@ -1501,10 +1611,9 @@ cob_decimal_set_binary (cob_decimal *d, cob_field *f) static int cob_decimal_get_binary (cob_decimal *d, cob_field *f, const int opt) { + const int field_sign = COB_FIELD_HAVE_SIGN (f); + const size_t bitnum = (f->size * 8) - field_sign; size_t overflow; - int field_sign, neg; - int bitnum; - int digits; #if !defined(COB_LI_IS_LL) cob_s64_t llval; @@ -1517,17 +1626,12 @@ cob_decimal_get_binary (cob_decimal *d, cob_field *f, const int opt) return 0; } overflow = 0; - digits = COB_FIELD_DIGITS(f); - if (COB_FIELD_HAVE_SIGN (f)) { - field_sign = 1; - } else { - field_sign = 0; - if (mpz_sgn (d->value) == -1) { - mpz_abs (d->value, d->value); - } + if (!field_sign + && mpz_sgn (d->value) == -1) { + mpz_abs (d->value, d->value); } - bitnum = (f->size * 8) - field_sign; if (f->size > sizeof(cob_u64_t)) { + int neg; size_t size; size_t sizeb; size_t count; @@ -1581,11 +1685,27 @@ cob_decimal_get_binary (cob_decimal *d, cob_field *f, const int opt) overflow = 1; /* Check if truncation to PIC digits is needed */ if (opt & COB_STORE_TRUNC_ON_OVERFLOW) { + const short scale = COB_FIELD_SCALE (f); + unsigned short digits; + if (scale >= 0) { + digits = COB_FIELD_DIGITS (f); + } else { + /* 99P -> 3 digits, scale -1 --> real digits are less */ + digits = COB_FIELD_DIGITS (f) + scale; + } mpz_tdiv_r (d->value, d->value, cob_mpze10[digits]); } else { mpz_fdiv_r_2exp (d->value, d->value, (f->size * 8)); } } else if (opt && COB_FIELD_BINARY_TRUNC (f)) { + const short scale = COB_FIELD_SCALE (f); + unsigned short digits; + if (scale >= 0) { + digits = COB_FIELD_DIGITS (f); + } else { + /* 99P -> 3 digits, scale -1 --> real digits are less */ + digits = COB_FIELD_DIGITS (f) + scale; + } if (mpz_cmpabs (d->value, cob_mpze10[digits]) >= 0) { /* Overflow */ if (opt & COB_STORE_KEEP_ON_OVERFLOW) { @@ -1635,7 +1755,10 @@ cob_decimal_get_binary (cob_decimal *d, cob_field *f, const int opt) } overflow: - cob_set_exception (COB_EC_SIZE_OVERFLOW); + /* Overflow */ + if ((opt & COB_STORE_NO_SIZE_ERROR) == 0) { + cob_set_exception (COB_EC_SIZE_OVERFLOW); + } return cobglobptr->cob_exception_code; } @@ -1750,7 +1873,9 @@ cob_print_realbin (const cob_field *f, FILE *fp, const int size) } } -static void +/* do rounding on the decimal, + returns 1 if needed and PROHIBITED */ +static int cob_decimal_do_round (cob_decimal *d, cob_field *f, const int opt) { cob_uli_t adj; @@ -1760,15 +1885,14 @@ cob_decimal_do_round (cob_decimal *d, cob_field *f, const int opt) /* Nothing to do when value is 0 or when target has GE scale */ if (sign == 0 || scale >= d->scale) { - return; + return 0; } switch (opt & ~(COB_STORE_MASK)) { case COB_STORE_TRUNCATION: - return; + return 0; case COB_STORE_PROHIBITED: - cob_set_exception (COB_EC_SIZE_TRUNCATION); - return; + return 1; case COB_STORE_AWAY_FROM_ZERO: adj = d->scale - scale; cob_pow_10 (cob_mpzt, adj); @@ -1781,7 +1905,7 @@ cob_decimal_do_round (cob_decimal *d, cob_field *f, const int opt) mpz_add (d->value, d->value, cob_mpzt); } } - return; + return 0; case COB_STORE_NEAR_TOWARD_ZERO: adj = d->scale - scale - 1; cob_pow_10 (cob_mpzt, adj); @@ -1794,14 +1918,14 @@ cob_decimal_do_round (cob_decimal *d, cob_field *f, const int opt) } } if (mpz_sgn (cob_mpzt2) == 0) { - return; + return 0; } if (sign == 1) { mpz_add_ui (d->value, d->value, 5UL); } else { mpz_sub_ui (d->value, d->value, 5UL); } - return; + return 0; case COB_STORE_TOWARD_GREATER: adj = d->scale - scale; cob_pow_10 (cob_mpzt, adj); @@ -1812,7 +1936,7 @@ cob_decimal_do_round (cob_decimal *d, cob_field *f, const int opt) mpz_add (d->value, d->value, cob_mpzt); } } - return; + return 0; case COB_STORE_TOWARD_LESSER: adj = d->scale - scale; cob_pow_10 (cob_mpzt, adj); @@ -1823,7 +1947,7 @@ cob_decimal_do_round (cob_decimal *d, cob_field *f, const int opt) mpz_sub (d->value, d->value, cob_mpzt); } } - return; + return 0; case COB_STORE_NEAR_EVEN: adj = d->scale - scale - 1; cob_pow_10 (cob_mpzt, adj); @@ -1843,7 +1967,7 @@ cob_decimal_do_round (cob_decimal *d, cob_field *f, const int opt) case 45: case 65: case 85: - return; + return 0; } } if (sign == 1) { @@ -1851,7 +1975,7 @@ cob_decimal_do_round (cob_decimal *d, cob_field *f, const int opt) } else { mpz_sub_ui (d->value, d->value, 5UL); } - return; + return 0; case COB_STORE_NEAR_AWAY_FROM_ZERO: default: { @@ -1865,7 +1989,7 @@ cob_decimal_do_round (cob_decimal *d, cob_field *f, const int opt) } else { mpz_sub_ui (d->value, d->value, 5UL); } - return; + return 0; } } @@ -1895,10 +2019,13 @@ cob_decimal_get_field (cob_decimal *d, cob_field *f, const int opt) /* Rounding */ if ((opt & COB_STORE_ROUND)) { - cob_decimal_do_round (d, f, opt); + if (cob_decimal_do_round (d, f, opt)) { + cob_set_exception (COB_EC_SIZE_TRUNCATION); + return cobglobptr->cob_exception_code; + } } if (!COB_FIELD_IS_FP (f)) { - /* Append or truncate decimal digits */ + /* Append or truncate decimal digits - useless for floating point */ int n = COB_FIELD_SCALE (f) - d->scale; if (n != 0) { if (mpz_sgn (d->value) == 0) { @@ -2110,11 +2237,58 @@ cob_decimal_align (cob_decimal *d1, const int scale) } } -/* Convenience functions */ +/* Convenience functions that use either an optimized approach + or internally convert to decimals as needed */ + +static int cob_add_bcd (cob_field *fdst, cob_field *fsrc1, cob_field *fsrc2, + int opt, const enum cob_statement stmt); + +/* optimized ADD / SUBTRACT based on optimized BCD arithmetic */ +static COB_INLINE COB_A_INLINE int +cob_addsub_optimized (cob_field *f1, cob_field *f2, + const int opt, const enum cob_statement stmt) +{ + const unsigned short f1_type = COB_FIELD_TYPE (f1); + const unsigned short f2_type = COB_FIELD_TYPE (f2); + if (f1_type == COB_TYPE_NUMERIC_PACKED) { + if (f2_type == COB_TYPE_NUMERIC_PACKED) { + cob_add_bcd (f1, f2, f1, opt, stmt); + return 1; + } else { + const unsigned short f2_digits = COB_FIELD_DIGITS (f2); + if ((f2_type == COB_TYPE_NUMERIC_DISPLAY + && f2_digits <= COB_MAX_DIGITS) + || f2_type == COB_TYPE_NUMERIC_BINARY + || f2_type == COB_TYPE_NUMERIC_COMP5) { + cob_field field; + cob_field_attr attr; + unsigned char buff[COB_MAX_DIGITS / 2 + 1]; + COB_FIELD_INIT (f2_digits / 2 + 1, buff, &attr); + COB_ATTR_INIT (COB_TYPE_NUMERIC_PACKED, f2_digits, + COB_FIELD_SCALE (f2), COB_FLAG_HAVE_SIGN, NULL); + if (f2_type == COB_TYPE_NUMERIC_DISPLAY) { + cob_move_display_to_packed (f2, &field); + } else { + /* wrapper handling P and other things */ + cob_move (f2, &field); + } + cob_add_bcd (f1, &field, f1, opt, stmt); + return 1; + } + } + } + + /* no optimization done, execute ADD/SUBTRACT in the caller */ + return 0; +} + void cob_add (cob_field *f1, cob_field *f2, const int opt) { + if (cob_addsub_optimized (f1, f2, opt, STMT_ADD)) { + return; /* optimized ADD done, get out */ + } cob_decimal_set_field (&cob_d1, f1); cob_decimal_set_field (&cob_d2, f2); cob_decimal_add (&cob_d1, &cob_d2); @@ -2124,6 +2298,9 @@ cob_add (cob_field *f1, cob_field *f2, const int opt) void cob_sub (cob_field *f1, cob_field *f2, const int opt) { + if (cob_addsub_optimized (f1, f2, opt, STMT_SUBTRACT)) { + return; /* optimized SUBTRACT done, get out */ + } cob_decimal_set_field (&cob_d1, f1); cob_decimal_set_field (&cob_d2, f2); cob_decimal_sub (&cob_d1, &cob_d2); @@ -2199,13 +2376,929 @@ cob_div_remainder (cob_field *fld_remainder, const int opt) (void)cob_decimal_get_field (&cob_d_remainder, fld_remainder, opt); } +/* internal MOVE handling by converting 'src' to cob_decimal, + then converting that back to 'dst' + with optional truncation as specified in 'opt'; + while this is quite expensive it converts between every numeric data type + with every attribute possible */ void cob_decimal_setget_fld (cob_field *src, cob_field *dst, const int opt) { cob_decimal_set_field (&cob_d1, src); - (void) cob_decimal_get_field (&cob_d1, dst, opt); + (void)cob_decimal_get_field (&cob_d1, dst, opt | COB_STORE_NO_SIZE_ERROR); +} + +/* shift the complete filled buffer one nibble left + with 'ptr_buff' pointing to the start of a fixed-size 48byte buffer to + accomodate 3 64bit integers for use of register shifting + note: the longest decimal field is 20 bytes long but we need the + extra 4 bytes to allow the use of register to do the shifting */ +static void +cob_shift_left_nibble (unsigned char *ptr_buff, unsigned char *ptr_start_data_byte) +{ + /* this logic is copied from the insert_packed_aligned function so that + any changes to that function should probaby require that this function + be examined for */ + + unsigned char carry_nibble; + unsigned char move_nibble = 0xFF; + + /* calculate the length of data to be shifted */ + const int len1 = 48 - (ptr_start_data_byte - ptr_buff); + + /* add one to ensure the carry nibble is moved */ + register int shift_cntr = len1 + 1; + + /* point at the last byte in buffer as we will shift from right to left !! */ + register cob_u64_t *ptr_long = (cob_u64_t *)(ptr_buff + 48 - 8); + +# ifndef WORDS_BIGENDIAN + cob_u64_t chunk; +# endif + + do { +# ifdef WORDS_BIGENDIAN + /* shift and include old nibble */ + carry_nibble = (unsigned char)(*ptr_long >> 60); + *ptr_long = (*ptr_long << 4); + if (shift_cntr < len1) { + *ptr_long |= move_nibble; + } +# else + /* load data to chunk, swap as necessary */ + chunk = COB_BSWAP_64 (*ptr_long); + /* shift and include old nibble */ + carry_nibble = (unsigned char)(chunk >> 60); + chunk = (chunk << 4); + if (shift_cntr < len1) { + chunk |= move_nibble; + } + /* swap as necessary, place in memory */ + *ptr_long = COB_BSWAP_64 (chunk); +# endif + /* prepare for next round */ + move_nibble = carry_nibble; + shift_cntr -= 8; + ptr_long--; + } while (shift_cntr > 0); +} + + +/* shift the complete filled buffer one nibble right + with 'ptr_buff' pointing to the start of a fixed-size 48byte buffer to + accomodate 3 64bit integers for use of register shifting + for more details see cob_shift_left_nibble; + note: the difference in this routine is that it will shift from left to right + so we need to start a the byte BEFORE the start data byte */ +static void +cob_shift_right_nibble (unsigned char *ptr_buff, unsigned char *ptr_start_data_byte) +{ + /* this logic is copied from the insert_packed_aligned function so that + any changes to that function should probaby require that this function + be examined for */ + +# ifndef WORDS_BIGENDIAN + cob_u64_t chunk; +# endif + + /* note that the carry & move nibbles have to be 64 bit because we need + to use binary OR the high order bits when shifting to the right !! */ + cob_u64_t carry_nibble; + cob_u64_t move_nibble = 0xFF; + + /* calculate the length of data to be shifted */ + const int len1 = 48 - (ptr_start_data_byte - ptr_buff); + + register int shift_cntr = len1; + + /* note that since we are shifting from left to right we have to start in the + first 64 bit area containing the high order 64 bit integer which contains + the starting position of the data to be shifted */ + register cob_u64_t *ptr_long = (cob_u64_t *)(ptr_buff + 48); + do { + ptr_long--; + } while (ptr_long > (cob_u64_t *)ptr_start_data_byte); /* we want to be there - or before! */ + + do { +# ifdef WORDS_BIGENDIAN + /* shift and include old nibble */ + carry_nibble = *ptr_long << 60; + *ptr_long = (*ptr_long >> 4); + if (shift_cntr < len1) { + *ptr_long |= move_nibble; + } +# else + /* load data to chunk, swap as necessary */ + chunk = COB_BSWAP_64 (*ptr_long); + /* shift and include old nibble */ + carry_nibble = chunk << 60; + chunk = (chunk >> 4); + if (shift_cntr < len1) { + chunk |= move_nibble; + } + /* swap as necessary, place in memory */ + *ptr_long = COB_BSWAP_64 (chunk); +# endif + /* prepare for next round */ + move_nibble = carry_nibble; + shift_cntr -= 8; + ptr_long++; + } while (shift_cntr > 0); +} + + +/* optimized MOVE between any BCD fields, no matter their attributes; + TODO: add handling of negative scales to cob_move_bcd */ +void +cob_move_bcd (cob_field *f1, cob_field *f2) +{ + /************************************************************/ + /* */ + /* Note that this routine will first check to see if data */ + /* shifting is required to meet the format of the */ + /* receiving field. If not then the data will be moved */ + /* directly from the input field to the receiving field */ + /* without the use of an intermediate buffer. If shifting */ + /* is required in either direction, then a 48 byte buffer */ + /* will be allocated to do the shifting. Note that 48 */ + /* bytes is more than needed but the addition function */ + /* requires 48 bytes to do its shifting so this way we */ + /* can use the same functions. */ + /* */ + /* When moving data to the left we need to strip the sign */ + /* when moving as it would be in the middle of the */ + /* receiving field. */ + /* */ + /************************************************************/ + + unsigned char *fld1 = COB_FIELD_DATA (f1); + unsigned char *fld2 = COB_FIELD_DATA (f2); + const size_t fld1_size = f1->size; + const size_t fld2_size = f2->size; + const int f2_has_no_sign_nibble = COB_FIELD_NO_SIGN_NIBBLE (f2); + + signed short fld1_scale, fld2_scale, diff, offset; + unsigned char fld1_sign; + int move_left; + + if (COB_FIELD_NO_SIGN_NIBBLE (f1)) { + fld1_sign = 0x00; + } else { + fld1_sign = *(fld1 + fld1_size - 1) & 0X0F; + } + + /************************************************************/ + /* Note that the scale is increased by 1 because the sign nibble will */ + /* be converted to a zero during the process of moving the data. The sign */ + /* will be added at the end of the process. */ + /************************************************************/ + + fld1_scale = !fld1_sign + ? COB_FIELD_SCALE (f1) : + COB_FIELD_SCALE (f1) + 1; + + fld2_scale = f2_has_no_sign_nibble + ? COB_FIELD_SCALE (f2) : + COB_FIELD_SCALE (f2) + 1; + + if (fld1_scale > fld2_scale) { + move_left = 0; + diff = fld1_scale - fld2_scale; + } else { + move_left = 1; + diff = fld2_scale - fld1_scale; + } + + + /************************************************************/ + /* Note that when the scale difference is a multiple of 2 */ + /* then there is NO SHIFTING required. So we can move the */ + /* sending field directly into the receiving field. */ + /************************************************************/ + + if (!(diff & 1)) { /* -> diff % 2 == 0 */ + offset = diff >> 1; + memset (fld2, 0, fld2_size); + if (move_left) { + const size_t llen = fld2_size - offset; + if (fld1_size <= llen) { + memcpy (fld2 + llen - fld1_size, fld1, fld1_size); + if (fld1_sign) { + *(fld2 + fld2_size - offset - 1) &= 0xF0; + } + } else { + memcpy (fld2, fld1 + fld1_size - llen, llen); + if (fld1_sign) { + *(fld2 + llen - 1) &= 0xF0; + } + } + } else { + const size_t llen = fld1_size - offset; + if (llen <= fld2_size) { + memcpy (fld2 + fld2_size - llen, fld1, llen); + } else { + memcpy (fld2, fld1 + fld1_size - offset - fld2_size, fld2_size); + } + } + + } else { + + /************************************************************/ + /* Note that when the scale difference is NOT a multiple */ + /* of 2 then SHIFTING of 1 nibble is required. To */ + /* accomplish this we will move the data to a 48 byte */ + /* buffer to do the actual shifting of the data before */ + /* moving to the receiving field */ + /************************************************************/ + + unsigned char buff[48] = { 0 }; + offset = diff >> 1; + + if (move_left) { + const size_t llen = 48 - offset; + unsigned char *pos = buff + llen - fld1_size; + memcpy (pos, fld1, fld1_size); + if (fld1_sign) { + *(buff + llen - 1) &= 0xF0; + } + cob_shift_left_nibble (buff, pos); + } else { + const size_t llen = fld1_size - offset; + unsigned char *pos = buff + 48 - llen; + memcpy (pos, fld1, llen); + if (fld1_sign) { + *(buff + llen - 1) &= 0xF0; + } + cob_shift_right_nibble (buff, pos); + } + + memcpy (fld2, buff + 48 - fld2_size, fld2_size); + } + + if (f2_has_no_sign_nibble) { + /************************************************************/ + /* The following will clear the "pad" nibble if present */ + /************************************************************/ + if (COB_FIELD_DIGITS (f2) & 1 /* -> digits % 2 == 1 */) { + *fld2 &= 0x0F; + } + } else { + unsigned char *pos = fld2 + fld2_size - 1; + if (COB_FIELD_HAVE_SIGN (f2)) { + if (!fld1_sign) { + *pos &= 0xF0; + *pos |= 0x0C; + } else { + *pos &= 0xF0; + *pos |= fld1_sign; + } + } else { + *pos &= 0xF0; + *pos |= 0x0F; + } + if (!(COB_FIELD_DIGITS (f2) & 1) /* -> digits % 2 == 0 */) { + *fld2 &= 0x0F; + } + } + } + +/* Optimized arithmetic for BCD fiields */ + +static unsigned char h2b[256] = +{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 255, 255, 255, 255, 255, 255, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 255, 255, 255, 255, 255, 255, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 255, 255, 255, 255, 255, 255, + 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 255, 255, 255, 255, 255, 255, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 255, 255, 255, 255, 255, 255, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 255, 255, 255, 255, 255, 255, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 255, 255, 255, 255, 255, 255, + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 255, 255, 255, 255, 255, 255, + 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 255, 255, 255, 255, 255, 255, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 255, 255, 255, 255, 255, 255 }; + +static unsigned char b2h[256] = +{ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, + 0x16, 0x17, 0x18, 0x19, 0x20, 0x21, 0x22, 0x23, + 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x30, 0x31, + 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, + 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, + 0x48, 0x49, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, + 0x56, 0x57, 0x58, 0x59, 0x60, 0x61, 0x62, 0x63, + 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x70, 0x71, + 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, + 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, + 0x88, 0x89, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, + 0x96, 0x97, 0x98, 0x99, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; + + +static COB_INLINE COB_A_INLINE int +handle_bcd_rounding (int *byte, const int round_half_nibble, + const int all_zeros, const int final_positive, + const int opt) +{ + unsigned char round; + if (*byte < 0) { + round = b2h[*byte + 100]; + } else + if (*byte >= 100) { + round = b2h[*byte - 100]; + } else { + round = b2h[*byte]; + } + + if (round_half_nibble) { + switch (opt & ~COB_STORE_MASK) { + case COB_STORE_PROHIBITED: + if ((opt & COB_STORE_NO_SIZE_ERROR) == 0) { + if (!all_zeros || (round & 0x0F)) { + cob_set_exception (COB_EC_SIZE_TRUNCATION); + /* cobglobptr->cob_exception_code returned by caller */ + return 1; + } + return COB_EC_SIZE_TRUNCATION; + } + break; + case COB_STORE_AWAY_FROM_ZERO: + if (!all_zeros || (round & 0x0F)) { + *byte += 10; + } + break; + case COB_STORE_NEAR_TOWARD_ZERO: + if ( (round & 0x0F) > 0x05 + || ((round & 0x0F) == 0x05 && !all_zeros)) { + *byte += 10; + } + break; + case COB_STORE_TOWARD_GREATER: + if (final_positive) + if (!all_zeros || (round & 0x0F)) { + *byte += 10; + } + break; + case COB_STORE_TOWARD_LESSER: + if (!final_positive) + if (!all_zeros || (round & 0x0F)) { + *byte += 10; + } + break; + case COB_STORE_NEAR_EVEN: + if (all_zeros && (round & 0x0F) == 0x05) { + if (round & 0x10) { + *byte += 5; + } + } else { + *byte += 5; + } + break; + case COB_STORE_NEAR_AWAY_FROM_ZERO: + default: + *byte += 5; + break; + } + } else { + switch (opt & ~COB_STORE_MASK) { + case COB_STORE_PROHIBITED: + if ((opt & COB_STORE_NO_SIZE_ERROR) == 0) { + if (!all_zeros || (round)) { + cob_set_exception (COB_EC_SIZE_TRUNCATION); + /* cobglobptr->cob_exception_code returned by caller */ + return 1; + } + } + break; + case COB_STORE_AWAY_FROM_ZERO: + if (!all_zeros || (round)) { + *byte += 100; + } + break; + case COB_STORE_NEAR_TOWARD_ZERO: + if ((round > 0x50) + || (round == 0x50 && !all_zeros)) { + *byte += 100; + } + break; + case COB_STORE_TOWARD_GREATER: + if (final_positive && (!all_zeros || (round))) { + *byte += 100; + } + break; + case COB_STORE_TOWARD_LESSER: + if (!final_positive && (!all_zeros || (round))) { + *byte += 100; + } + break; + case COB_STORE_NEAR_EVEN: + if (all_zeros && (round == 0x50)) { + return -2; /* "check next *byte" */ + } else { + *byte += 50; + } + break; + case COB_STORE_NEAR_AWAY_FROM_ZERO: + default: + *byte += 50; + break; + } + } + return -1; +} + +static COB_INLINE COB_A_INLINE int +count_leading_zeros (unsigned char *ptr_char, int len) +{ + int cntr = 0; + while (*ptr_char++ == 0x00 && cntr++ < len); + return cntr; +} + +/* check for overflow and set the final sign into the working buffer */ +static int +check_overflow_and_set_sign (cob_field *f, const int opt, + int final_positive, unsigned char *buff, unsigned char *pos) +{ + const int buff_size = 48 - (pos - buff); + const int fsize = (int)f->size; + int cmp_size = buff_size - fsize; + unsigned char *last_buff_pos = buff + 48 - 1; + + if (!COB_FIELD_NO_SIGN_NIBBLE (f)) { + *last_buff_pos &= 0xF0; + } + + if (cmp_size >= 0) { + const int lead_zeros = count_leading_zeros (pos, buff_size); + const int has_pad_digit = + (COB_FIELD_DIGITS (f) % 2 == 1 && COB_FIELD_NO_SIGN_NIBBLE (f)) + || (COB_FIELD_DIGITS (f) % 2 == 0 && !COB_FIELD_NO_SIGN_NIBBLE (f)); + + cmp_size -= lead_zeros; + + if ((cmp_size > 0) /* more data than possible to store - definitely an overflow */ + || (cmp_size == 0 /* check if we only expect a single digit but have two set */ + && has_pad_digit + && *(pos + lead_zeros) > 0x0F)) { + /* Overflow */ + if ((opt & COB_STORE_NO_SIZE_ERROR) == 0) { + cob_set_exception (COB_EC_SIZE_OVERFLOW); + if (opt & COB_STORE_KEEP_ON_OVERFLOW) { + /* cobglobptr->cob_exception_code returned by caller */ + return 1; + } + } + if (has_pad_digit) { + /* check and set last leading digit if needed */ + *(buff + 48 - f->size) &= 0x0F; + } + if (!final_positive + && COB_FIELD_HAVE_SIGN (f)) { + /* check for all zero after truncation - have that as positive */ + unsigned char *end = buff + 48; + pos = end - fsize; + final_positive = 1; /* "guess" it is zero */ + while (pos < end) { + if (*pos++) { + final_positive = 0; /* no, it isn't - set back and get out */ + break; + } + } + } + } + } + +#if 0 + /* check for special truncation error: + a negative value which the receiver field does not allow + + note: the COBOL standard "since ever" asks only for exceptions + if absolute values do not fit a missing sign is silently dropped; + therefore no exception is returned */ + + if (!final_positive && !COB_FIELD_HAVE_SIGN (f)) { + if (opt & COB_STORE_CHECK_SIGN_DROP) { + cob_runtime_error ("negative result value with unsigned result-item"); + } + } +#endif + + /* note: we did clean the sign from the buffer when entering the function */ + if (!COB_FIELD_NO_SIGN_NIBBLE (f)) { + if (!COB_FIELD_HAVE_SIGN (f)) { + *last_buff_pos |= 0x0F; + } else + if (final_positive) { + *last_buff_pos |= 0x0C; + } else { + *last_buff_pos |= 0x0D; + } + } + + return 0; + +} + +/* BCD (COMP-3/COMP-6) ADD / SUBTRACT with GIVING, where + the GIVING field may be one of the source fields */ +static int +cob_add_bcd (cob_field *fdst, + cob_field *fsrc1, cob_field *fsrc2, + int opt, const enum cob_statement stmt) +{ + /* function overview: + + This function internally converts the source fields to COMP-6 + while moving them to intermediate buffers, aligning them to + the scale of the field with the largest scale and keeping track + of the signs with indicator variables. + Note that for the addition logic to work correctly, the field + with the largest absolute value must be the positive field, + we therefore reverse the signs of the fields if necessary. + + Requested rounding is done during the addition operation + and finally the data is moved to the receiving field after + checking for overflow and setting the final result sign. */ + + register int byte; + register int carry = 0; + register int loop_limit, cntr; + + unsigned char fld1_buff[48] = { 0 }; + unsigned char fld2_buff[48] = { 0 }; + + const int fld1_size = (int)fsrc1->size; + const int fld2_size = (int)fsrc2->size; + const int dest_size = (int)fdst->size; + + const unsigned char *src1_data = COB_FIELD_DATA (fsrc1); + const unsigned char *src2_data = COB_FIELD_DATA (fsrc2); + + unsigned char fld1_sign = COB_FIELD_NO_SIGN_NIBBLE (fsrc1) ? 0x00 + : *(src1_data + fld1_size - 1) & 0X0F; + const unsigned char fld2_sign = COB_FIELD_NO_SIGN_NIBBLE (fsrc2) ? 0x00 + : *(src2_data + fld2_size - 1) & 0X0F; + + const signed short src1_scale = COB_FIELD_SCALE (fsrc1); + const signed short src2_scale = COB_FIELD_SCALE (fsrc2); + const signed short dst_scale = COB_FIELD_SCALE (fdst); + + const signed short used_original_scale + = src1_scale > src2_scale ? src1_scale : src2_scale; + + const signed short fld1_scale = (fld1_sign == 0x00) ? src1_scale : src1_scale + 1; + const signed short fld2_scale = (fld2_sign == 0x00) ? src2_scale : src2_scale + 1; + const signed short dest_scale = (COB_FIELD_NO_SIGN_NIBBLE (fdst)) ? dst_scale : dst_scale + 1; + + const signed short used_scale + = fld1_scale > fld2_scale ? fld1_scale : fld2_scale; + + unsigned char *fld1, *fld2; + unsigned char *rslt, *pos, *neg; + + int rounding_digit = 0; + int rounding_byte = 0; + int final_positive = 1; + int check_rounding = 0; + int check_all_zeros = 0; + int all_zeros = 0; + + /* the following code is used to determine if we need to check for rounding + and if so, then which digit and byte we need to check for this; + note that we need to know both because the addition loop processes + a byte at a time rather than a digit; + because some rounding operations need to determine if the value is exactly + between the next higher digit, we keep track of "all digits to the right + of the rounding digit are zero" */ + if ((used_original_scale <= dst_scale) + || (used_scale < dest_scale) + || (opt & COB_STORE_TRUNCATION) + || !(opt & ~COB_STORE_MASK)) { + check_rounding = 0; + check_all_zeros = 0; + all_zeros = 0; + } else { + /* for all those rounding options we need we need a check for + the result being exactly between the two nearest values */ + if (opt + & ( COB_STORE_AWAY_FROM_ZERO | COB_STORE_PROHIBITED + | COB_STORE_TOWARD_GREATER | COB_STORE_TOWARD_LESSER + | COB_STORE_NEAR_TOWARD_ZERO)) { + check_all_zeros = 1; + all_zeros = 1; + } + /* note that when calculating the rounding digit it is 1 digit to the right + of the last digit in the data which is kept; + also because there are 2 digits in every byte, before dividing by 2 we + need to add 1 so that we find the byte number where the rounding digit + exists; we finally subtract 1 to get to the C offzet (zero based) */ + rounding_digit = used_scale - dest_scale; + if (!COB_FIELD_NO_SIGN_NIBBLE (fdst)) { + rounding_digit += 1; + } + rounding_byte = (rounding_digit + 1) / 2; + rounding_byte -= 1; + check_rounding = 1; + } + + + /* transfer data of both BCD source fields to their buffers using the bigger + scale of them and drop the sign nibble (handled separately); + note: if the scale isn't identical and the buffer can't be placed at the + same position we finally shift it by one half-byte */ + + /* most common case: same scale first */ + if (fld1_scale == fld2_scale) { + fld1 = fld1_buff + 48 - fld1_size; + memcpy (fld1, src1_data, fld1_size); + if (fld1_sign) { + *(fld1_buff + 48 - 1) &= 0xF0; + } + fld2 = fld2_buff + 48 - fld2_size; + memcpy (fld2, src2_data, fld2_size); + if (fld2_sign) { + *(fld2_buff + 48 - 1) &= 0xF0; + } + } else + /* source has smaller scale than target */ + if (fld1_scale < fld2_scale) { + const int diff = fld2_scale - fld1_scale; + const int offset = diff >> 1; + fld2 = fld2_buff + 48 - fld2_size; + memcpy (fld2, src2_data, fld2_size); + if (fld2_sign) { + *(fld2_buff + 48 - 1) &= 0xF0; + } + fld1 = fld1_buff + 48 - fld1_size - offset; + memcpy (fld1, src1_data, fld1_size); + if (fld1_sign) { + *(fld1_buff + 48 - 1 - offset) &= 0xF0; + } + if (diff % 2 == 1) { + cob_shift_left_nibble (fld1_buff, fld1); + fld1--; + } + } else + /* if (fld1_scale > fld2_scale) */ + { + const int diff = fld1_scale - fld2_scale; + const int offset = diff >> 1; + fld1 = fld1_buff + 48 - fld1_size; + memcpy (fld1, src1_data, fld1_size); + if (fld1_sign) { + *(fld1_buff + 48 - 1) &= 0xF0; + } + fld2 = fld2_buff + 48 - fld2_size - offset; + memcpy (fld2, src2_data, fld2_size); + if (fld2_sign) { + *(fld2_buff + 48 - 1 - offset) &= 0xF0; + } + if (diff % 2 == 1) { + cob_shift_left_nibble (fld2_buff, fld2); + fld2--; + } + } + + /* do actual computation after finding the length of the size-adjusted buffer + (after possible padding + shifting to align size + scale); + note that the result will be stored in fld2_buff */ + + /* find the length of the longer buffer data */ + if (fld1 - fld1_buff > fld2 - fld2_buff) { + loop_limit = 48 - (fld2 - fld2_buff) + 1; + } else { + loop_limit = 48 - (fld1 - fld1_buff) + 1; + } + + /* note: both fl1 and fld2 point at the _last_ position of the + buffers as we are processing right to left */ + fld1 = fld1_buff + 48 - 1; + fld2 = fld2_buff + 48 - 1; + rslt = fld2; + + /* determine if the signs are different for the two fields, this allows + us to use two sepearate addition loops, keeping the sign check + outside of those */ + + if (stmt == STMT_SUBTRACT) { + /* reverse the sign of field 1 to handle SUBTRACT mode */ + if (fld1_sign == 0x0D) { + fld1_sign = 0x0C; + } else { + fld1_sign = 0x0D; + } + } + + /* we have an internal addition if either both signs are identical + or none is negative (note: each of 0x0f 0x0c 0x00 are positive) */ + if (fld1_sign == fld2_sign + || (fld1_sign != 0x0D + && fld2_sign != 0x0D)) { + int check_next_byte = 0; + if (fld1_sign == 0x0D) { + final_positive = 0; + } + + for (cntr = 0; cntr < loop_limit; cntr++, fld1--, fld2--, rslt--) { + /* actual addition */ + byte = carry + h2b[*fld1] + h2b[*fld2]; + + if (check_rounding) { + if (check_next_byte) { + /* if we already did the rounding with NEAREST-EVEN and + the rounding digit was even, then we may adjust the + next byte here, then are "really done" with rounding */ + if (byte % 2 == 1) { + byte += 1; + } + check_rounding = 0; + } else + if (cntr == rounding_byte) { + /* position for rounding */ + int byte_adj = byte; + int rtn = handle_bcd_rounding (&byte_adj, rounding_digit % 2 == 1, + all_zeros, final_positive, opt); + if (rtn == -1) { + /* rounding done and finished, no further checks needed */ + byte = byte_adj; + check_rounding = 0; + check_all_zeros = 0; + } else + if (rtn == -2) { + /* rounding done, still need to handle "check next byte" */ + check_next_byte = 1; + check_all_zeros = 0; + } else { + /* exception */ + return cobglobptr->cob_exception_code; + } + } else { + /* no rounding yet */ + } + } + + if (byte >= 200) { + byte -= 200; + carry = 2; + } else + if (byte >= 100) { + byte -= 100; + carry = 1; + } else { + carry = 0; + } + + if (check_all_zeros + && byte != 0) { + check_all_zeros = 0; + all_zeros = 0; + } + *rslt = b2h[byte]; + } + } else { + /* subtraction - check which field's data has the highest absolute value + to know how to do that */ + const int compare_result = memcmp (fld1_buff + 48 - loop_limit, + fld2_buff + 48 - loop_limit, + loop_limit); + int check_next_byte = 0; + /* subtract smaller value from larger - directly possibly to do... */ + if (compare_result < 0) { + if (fld1_sign != 0x0D) { + final_positive = 0; + } + neg = fld1; + pos = fld2; + } else + /* ...but if the negative data has a greater absolute value, then we + need to reverse the sign for addition (setting the final sign as + negative already) */ + if (compare_result > 0) { + if (fld1_sign == 0x0D) { + final_positive = 0; + } + neg = fld2; + pos = fld1; + } else + /* special case (as we have that information already) - both data are + identical, only sign is the reverse -> the result has to be zero */ + /* if (compare_result == 0) */ { + cob_set_packed_zero (fdst); + return 0; + } + + for (cntr = 0; cntr < loop_limit; cntr++, neg--, pos--, rslt--) { + /* actual subtraction */ + byte = carry + h2b[*pos] - h2b[*neg]; + + if (check_rounding) { + if (check_next_byte) { + /* if we already did the rounding with NEAREST-EVEN and + the rounding digit was even, then we may adjust the + next byte here, then are "really done" with rounding */ + if (byte % 2 == 1) { + byte += 1; + } + check_rounding = 0; + } else + if (cntr == rounding_byte) { + int byte_adj = byte; + int rtn = handle_bcd_rounding (&byte_adj, rounding_digit % 2 == 1, + all_zeros, final_positive, opt); + if (rtn == -1) { + /* rounding done and finished, no further checks needed */ + byte = byte_adj; + check_rounding = 0; + check_all_zeros = 0; + } else + if (rtn == -2) { + /* rounding done, still need to handle "check next byte" */ + check_next_byte = 1; + check_all_zeros = 0; + } else { + /* exception */ + return cobglobptr->cob_exception_code; + } + } else { + /* no rounding yet */ + } + } + + if (byte < 0) { + byte += 100; + carry = -1; + } else if (byte >= 100) { + byte -= 100; + carry = 1; + } else { + carry = 0; + } + + if (check_all_zeros && byte != 0 && byte != 100 && byte != 200) { + check_all_zeros = 0; + all_zeros = 0; + } + *rslt = b2h[byte]; + } + } + + + /* computation done, check for SIZE ERROR, then copy result to target */ + + /* reset fld2 to point to start of the data for following memmove / checks */ + fld2 = fld2_buff + 48 - loop_limit; + + if (used_scale == dest_scale) { + /* most common case: identical scale, no need to shift buffer */ + } else + if (used_scale > dest_scale) { + const int diff = used_scale - dest_scale; + const int offset = diff / 2; + memmove (fld2 + offset, fld2, loop_limit - offset); + memset (fld2, 0, offset); + fld2 += offset; + if (diff & 1) { + cob_shift_right_nibble (fld2_buff, fld2); + } + /* may happen if fdst != fsrc2: */ + } else + /* if (used_scale < dest_scale) */ { + const int diff = dest_scale - used_scale; + const int offset = diff / 2; + memmove (fld2 - offset, fld2, loop_limit); + memset (fld2_buff + 48 - offset, 0, offset); + if (diff % 2 == 1) { + cob_shift_left_nibble (fld2_buff, fld2); + } + } + + if (check_overflow_and_set_sign (fdst, opt, final_positive, fld2_buff, fld2)) { + return cobglobptr->cob_exception_code; + } + memcpy (COB_FIELD_DATA (fdst), fld2_buff + 48 - dest_size, dest_size); + return 0; +} + + #if 0 /* RXWRXW - Buggy */ /* Optimized arithmetic for DISPLAY */ @@ -2304,22 +3397,17 @@ display_sub_int (unsigned char *data, const size_t size, int n, const int opt) static int cob_display_add_int (cob_field *f, int n, const int opt) { - unsigned char *data; - size_t osize; - size_t size; + const unsigned char *data = COB_FIELD_DATA (f); + size_t size = COB_FIELD_SIZE (f); + const size_t osize = size; size_t i; - int scale; + int scale = COB_FIELD_SCALE (f); int sign; unsigned char tfield[256]; - data = COB_FIELD_DATA (f); - size = COB_FIELD_SIZE (f); - osize = size; if (opt & COB_STORE_KEEP_ON_OVERFLOW) { memcpy (tfield, data, size); } - scale = COB_FIELD_SCALE (f); - sign = COB_GET_SIGN (f); /* -x +v = -(x - v), -x -v = -(x + v) */ if (sign == -1) { n = -n; @@ -2344,7 +3432,6 @@ cob_display_add_int (cob_field *f, int n, const int opt) /* PIC 9(n)V9(m) */ size -= scale; if (!size) { - COB_PUT_SIGN (f, sign); cob_set_exception (COB_EC_SIZE_OVERFLOW); if (opt & COB_STORE_KEEP_ON_OVERFLOW) { return cobglobptr->cob_exception_code; @@ -2352,12 +3439,12 @@ cob_display_add_int (cob_field *f, int n, const int opt) return 0; } } + sign = COB_GET_SIGN_ADJUST (f); if (n > 0) { /* Add n to the field */ if (display_add_int (data, size, n, opt) != 0) { /* Overflow */ - COB_PUT_SIGN (f, sign); cob_set_exception (COB_EC_SIZE_OVERFLOW); /* If we need to restore */ if (opt & COB_STORE_KEEP_ON_OVERFLOW) { @@ -2384,7 +3471,7 @@ cob_display_add_int (cob_field *f, int n, const int opt) } } - COB_PUT_SIGN (f, sign); + COB_PUT_SIGN_ADJUSTED (f, sign); return 0; } #endif /* Buggy */ @@ -2679,21 +3766,263 @@ cob_cmp_float (cob_field *f1, cob_field *f2) cob_decimal_set_field (&cob_d1, f2); d2 = cob_decimal_get_double (&cob_d1); } - if (d1 == d2) + if (d1 == d2) { return 0; + } if (d1 != 0.0 /* check for zero to ensure no SIGFPE in the following macro */ - && FLOAT_EQ (d1, d2, TOLERANCE)) + && FLOAT_EQ (d1, d2, TOLERANCE)) { return 0; - if (d1 < d2) + } + if (d1 < d2) { return -1; + } return 1; } +/* check for non-negative sign, if it is set, then check for nonzero data */ +static COB_INLINE COB_A_INLINE int +packed_is_negative (cob_field *f) +{ + if (cob_packed_get_sign (f) == -1) { + /* negative sign, validate for nonzero data */ + unsigned char *data = COB_FIELD_DATA (f); + register unsigned char *end = data + f->size - 1; + /* nonzero if byte with sign nibble has other data */ + if ((*end != 0x0D)) { + return 1; /* extra data -> really negative */ + } + /* nonzero "really negative" if any other data is nonzero, + checking backwards from before sign until end == start */ + while (data != end) { + if (*--end != 0) { + return 1; + } + } + /* all zero -> not negative, even with the sign telling so */ + return 0; + } + return 0; +} + +#ifndef NO_BCD_COMPARE +static COB_INLINE COB_A_INLINE int +insert_packed_aligned ( + const cob_field *f1, const int no_sign_nibble_f1, const int scale1, + const cob_field *f2, const int no_sign_nibble_f2, const int scale2, + unsigned char *ptr_byte, unsigned char *ptr_byte2, const int buff_size) +{ + register unsigned char *ptr_byte1 = ptr_byte; + + const int len1 = (int)f1->size; + const int len2 = (int)f2->size; + + int compare_len, nibble_cntr, byte_cntr; + + /* calculate amount to shift left */ + nibble_cntr = scale2 - scale1; + if (no_sign_nibble_f1 && !no_sign_nibble_f2) { + nibble_cntr++; + } + + /* insert data into initialized buffer at the end */ + byte_cntr = nibble_cntr >> 1; /* nibbles dived by 2 = bytes */ + nibble_cntr &= 0x00000001; /* modulo divide nibble by 2 */ + ptr_byte1 += buff_size - (len1 + byte_cntr); + memcpy (ptr_byte1, COB_FIELD_DATA (f1), len1); + if (!no_sign_nibble_f1) { + *(ptr_byte1 + len1 - 1) &= 0xF0; /* clear sign nibble */ + } + + if (nibble_cntr != 0) { + + /* shift the complete filled buffer one nibble left */ +#ifdef ALTERNATIVE_PACKED_SWAP /* should work portably, but is around 20% slower */ + register unsigned char *last_pos = ptr_byte1 + len1; + *(ptr_byte1 - 1) = *ptr_byte1 >> 4; + while (ptr_byte1 != last_pos) { + *ptr_byte1 = (*ptr_byte1 << 4) | (*(ptr_byte1 + 1) >> 4); + ptr_byte1++; + } +#else + +# ifndef WORDS_BIGENDIAN + cob_u64_t chunk; +# endif + register cob_u64_t *ptr_long; + unsigned char carry_nibble, move_nibble; + int shift_cntr; + + shift_cntr = len1 + 1; /* add one to ensure the carry nibble is moved */ + move_nibble = 0xFF; + ptr_long = (cob_u64_t*)(ptr_byte1 + len1 - 8); + do { +# ifdef WORDS_BIGENDIAN + /* shift and include old nibble */ + carry_nibble = (unsigned char)(*ptr_long >> 60); + *ptr_long = (*ptr_long << 4); + if (shift_cntr < len1) { + *ptr_long |= move_nibble; + } +# else + /* load data to chunk, swap as necessary */ + chunk = COB_BSWAP_64 ((cob_u64_t)(*ptr_long)); + /* shift and include old nibble */ + carry_nibble = (unsigned char)(chunk >> 60); + chunk = (chunk << 4); + if (shift_cntr < len1) { + chunk |= move_nibble; + } + /* swap as necessary, place in memory */ + *ptr_long = COB_BSWAP_64 ((cob_u64_t)(chunk)); +# endif + /* prepare for next round */ + move_nibble = carry_nibble; + shift_cntr -= 8; + ptr_long--; + } while (shift_cntr > 0); + +#endif + compare_len = len1 + byte_cntr + nibble_cntr; + } else { + compare_len = len1 + byte_cntr; + } + + /* insert data2 into initialized buffer at the end */ + ptr_byte2 += buff_size - len2; + memcpy (ptr_byte2, COB_FIELD_DATA (f2), len2); + if (!no_sign_nibble_f2) { + *(ptr_byte2 + len2 - 1) &= 0xF0; /* clear sign nibble */ + } + + /* return length for compare */ + if (len2 > compare_len) { + return len2; + } + return compare_len; +} + +static COB_INLINE COB_A_INLINE int +decimal_convert_scale ( + const cob_field *f1, const int no_sign_nibble_f1, const int scale1, + const cob_field *f2, const int no_sign_nibble_f2, const int scale2, + const int both_are_negative) +{ + unsigned char buff1[48] = {0}, buff2[48] = {0}; + unsigned char *ptr_byte1, *ptr_byte2; + + int compare_len; + + /* Note: we explicit do not drop the leftmost niobble for even digits (COMP-3) / + odd digits (COMP-6) - as at least MF compares those, too, + IBM presumably does the same */ + + /* TODO: handle negative scale 99PPPP - and also take care for .PPPP9 */ + + /* left or right buffer to shift? */ + if ((scale1 < scale2) + || (scale1 == scale2 + && no_sign_nibble_f1)) { + + compare_len = insert_packed_aligned ( + f1, no_sign_nibble_f1, scale1, + f2, no_sign_nibble_f2, scale2, + buff1, buff2, 48 + ); + + } else { + compare_len = insert_packed_aligned ( + f2, no_sign_nibble_f2, scale2, + f1, no_sign_nibble_f1, scale1, + buff2, buff1, 48 + ); + + } + + ptr_byte1 = buff1 + 48 - compare_len; + ptr_byte2 = buff2 + 48 - compare_len; + + if (both_are_negative) { + return memcmp (ptr_byte2, ptr_byte1, compare_len); + } else { + return memcmp (ptr_byte1, ptr_byte2, compare_len); + } +} + +int +cob_bcd_cmp (cob_field *f1, cob_field *f2) +{ + const int f1_is_negative = packed_is_negative (f1); + const int f2_is_negative = packed_is_negative (f2); + + if (f1_is_negative && !f2_is_negative) { + return -1; + } + if (!f1_is_negative && f2_is_negative) { + return 1; + } + + { + const int no_sign_nibble_f1 = COB_FIELD_NO_SIGN_NIBBLE (f1); + const int no_sign_nibble_f2 = COB_FIELD_NO_SIGN_NIBBLE (f2); + + const int scale1 = COB_FIELD_SCALE (f1); + const int scale2 = COB_FIELD_SCALE (f2); + + if (f1->size == f2->size /* note: we explicit ignore different digits here */ + && no_sign_nibble_f1 == no_sign_nibble_f2 + && scale1 == scale2) { + /* Note: we explicit do not drop the higher bit for even digits (COMP-3) / + odd digits (COMP-6) - as at least MF compares those, too (but sometimes not?) */ + const unsigned char *data1 = COB_FIELD_DATA (f1); + const unsigned char *data2 = COB_FIELD_DATA (f2); + if (no_sign_nibble_f1) { + /* in this case both have no sign, directly compare the positive values */ + const size_t len = f1->size; + return memcmp (data1, data2, len); + } else { + /* in this case both have a _possible_ sign, and are either both positive or negative */ + const size_t len = f1->size - 1; + int ret; + /* compare data from left to right - all but half that includes sign nibble */ + if ((ret = memcmp (data1, data2, len)) == 0) { + /* so far identical - compare upper half byte with sign nibble last */ + ret = (data1[len] & 0xF0) - (data2[len] & 0xF0); + } + /* swap compare result for negative values */ + if (f1_is_negative) { + return -ret; + } else { + return ret; + } + } + } + + return decimal_convert_scale ( + f1, no_sign_nibble_f1, scale1, + f2, no_sign_nibble_f2, scale2, + f1_is_negative /* in this case both are non-negative */ + ); + } +} +# else + +int +cob_bcd_cmp (cob_field *f1, cob_field *f2) +{ + /* Fallback: internal decimal compare (most expensive) */ + cob_decimal_set_field (&cob_d1, f1); + cob_decimal_set_field (&cob_d2, f2); + return cob_decimal_cmp (&cob_d1, &cob_d2); +} +#endif + int cob_numeric_cmp (cob_field *f1, cob_field *f2) { const int f1_type = COB_FIELD_TYPE (f1); const int f2_type = COB_FIELD_TYPE (f2); + + /* float needs special comparison */ if (f1_type == COB_TYPE_NUMERIC_FLOAT || f1_type == COB_TYPE_NUMERIC_DOUBLE || f1_type == COB_TYPE_NUMERIC_L_DOUBLE @@ -2702,58 +4031,81 @@ cob_numeric_cmp (cob_field *f1, cob_field *f2) || f2_type == COB_TYPE_NUMERIC_L_DOUBLE) { return cob_cmp_float (f1, f2); } + +#ifndef NO_BCD_COMPARE + /* do bcd compare if possible */ + if (f1_type == COB_TYPE_NUMERIC_PACKED + && f2_type == COB_TYPE_NUMERIC_PACKED) { + /* for now skip negative scale, until this is added and tested */ + if (COB_FIELD_SCALE (f1) >= 0 && COB_FIELD_SCALE (f2) >= 0) { + return cob_bcd_cmp (f1, f2); + } + } +#endif + + /* otherwise - preferably compare as integers */ + if (COB_FIELD_SCALE (f1) == COB_FIELD_SCALE (f2) + && COB_FIELD_DIGITS (f1) < 19 + && COB_FIELD_DIGITS (f2) < 19) { + if (COB_FIELD_SCALE (f1) == 0) { + /* no scale, so get the data out directly */ + const cob_s64_t f1_num = cob_get_llint (f1); + const cob_s64_t f2_num = cob_get_llint (f2); + return (f1_num < f2_num) ? -1 : (f1_num > f2_num); + } else { + /* handle those fields as if they would have no scale */ + const cob_field_attr *a1 = f1->attr, *a2 = f2->attr; + cob_field_attr ca1, ca2; + cob_field c1, c2; + COB_ATTR_INIT_A (ca1, a1->type, a1->digits, 0, a1->flags, a1->pic); + COB_ATTR_INIT_A (ca2, a2->type, a2->digits, 0, a2->flags, a2->pic); + COB_FIELD_INIT_F (c1, f1->size, f1->data, &ca1); + COB_FIELD_INIT_F (c2, f2->size, f2->data, &ca2); + { + const cob_s64_t f1_num = cob_get_llint (&c1); + const cob_s64_t f2_num = cob_get_llint (&c2); + return (f1_num < f2_num) ? -1 : (f1_num > f2_num); + } + } + } + + /* Fallback: internal decimal compare (most expensive) */ cob_decimal_set_field (&cob_d1, f1); cob_decimal_set_field (&cob_d2, f2); return cob_decimal_cmp (&cob_d1, &cob_d2); } -int -cob_cmp_packed (cob_field *f, const cob_s64_t val) +static int +cmp_packed_intern (cob_field *f, cob_u64_t n, const int both_are_negative) { unsigned char val1[MAX_LLI_DIGITS_PLUS_1]; - size_t first_post; + size_t first_pos; unsigned char *p; - cob_u64_t n; - int sign; - register size_t size; - - if (COB_FIELD_NO_SIGN_NIBBLE (f)) { - sign = 0; - } else { - sign = cob_packed_get_sign (f); - } - /* Field positive, value negative */ - if (sign != -1 && val < 0) { - return 1; - } - /* Field negative, value positive */ - if (sign == -1 && val >= 0) { - return -1; - } - /* Both positive or both negative */ - if (val < 0) { - n = (cob_u64_t)-val; - } else { - n = (cob_u64_t)val; - } + register size_t size = f->size; /* 1) re-pack field-data to 20 bytes -> val1 */ p = f->data; - first_post = sizeof(val1) - f->size; - memset (val1, 0, sizeof(val1)); - for (size = first_post; size < sizeof(val1); size++) { - val1[size] = *p++; - } + first_pos = sizeof(val1) - size; + memset (val1, 0, first_pos); + memcpy (val1 + first_pos, p, size); + +#if 0 /* Note: we explicit do not drop the higher bit for even digits (COMP-3) / + odd digits (COMP-6) - as at least MF compares those, too */ if (COB_FIELD_NO_SIGN_NIBBLE (f)) { if ((COB_FIELD_DIGITS(f) % 2) == 1) { - val1[first_post] &= 0x0F; + val1[first_pos] &= 0x0F; } } else { - val1[19] &= 0xF0; if ((COB_FIELD_DIGITS(f) % 2) == 0) { - val1[first_post] &= 0x0F; + val1[first_pos] &= 0x0F; } } +#endif + /* drop sign bit - we only compare both positive/negative here */ + if (!COB_FIELD_NO_SIGN_NIBBLE (f)) { + val1[19] &= 0xF0; + } + /* 2) pack "n" to 20 bytes -> packed_value */ if (n != last_packed_val) { /* otherwise we just leave the already packed value as-is */ @@ -2775,53 +4127,83 @@ cob_cmp_packed (cob_field *f, const cob_s64_t val) } } /* 3) byte-wise compare of val1 + packed_value */ - for (size = 0; size < sizeof(val1); size++) { - if (val1[size] != packed_value[size]) { - if (sign == -1) { - return packed_value[size] - val1[size]; - } else { - return val1[size] - packed_value[size]; + { + register int ret; + for (size = 0; size < sizeof(val1); size++) { + if ((ret = val1[size] - packed_value[size]) != 0) { + if (both_are_negative) { + return -ret; + } else { + return ret; + } } } } return 0; } +int +cob_cmp_packed (cob_field *f, const cob_s64_t val) +{ + if (COB_FIELD_DIGITS (f) >= 19) { + const int is_negative = packed_is_negative (f); + + /* Field negative, value positive */ + if (is_negative && val >= 0) { + return -1; + } + /* Field positive, value negative */ + if (!is_negative && val < 0) { + return 1; + } + + /* Swap if both are negative */ + if (val < 0) { + return cmp_packed_intern (f, (cob_u64_t)-val, 1); + } else { + return cmp_packed_intern (f, (cob_u64_t)val, 0); + } + } else { + const cob_s64_t n = cob_get_llint (f); + return (n < val) ? -1 : (n > val); + } +} + /* Numeric Display compares */ #ifdef COB_EBCDIC_MACHINE static unsigned int -cob_get_long_ascii_sign (const unsigned char *p, cob_s64_t *val) +cob_get_long_ascii_sign (const unsigned char *p, int *val) { switch (*p) { case 'p': return 1; case 'q': - *val += 1; + *val = 1; return 1; case 'r': - *val += 2; + *val = 2; return 1; case 's': - *val += 3; + *val = 3; return 1; case 't': - *val += 4; + *val = 4; return 1; case 'u': - *val += 5; + *val = 5; return 1; case 'v': - *val += 6; + *val = 6; return 1; case 'w': - *val += 7; + *val = 7; return 1; case 'x': - *val += 8; + *val = 8; return 1; case 'y': - *val += 9; + *val = 9; return 1; } return 0; @@ -2829,66 +4211,66 @@ cob_get_long_ascii_sign (const unsigned char *p, cob_s64_t *val) #endif static unsigned int -cob_get_long_ebcdic_sign (const unsigned char *p, cob_s64_t *val) +cob_get_long_ebcdic_sign (const unsigned char *p, int *val) { switch (*p) { case '{': return 0; case 'A': - *val += 1; + *val = 1; return 0; case 'B': - *val += 2; + *val = 2; return 0; case 'C': - *val += 3; + *val = 3; return 0; case 'D': - *val += 4; + *val = 4; return 0; case 'E': - *val += 5; + *val = 5; return 0; case 'F': - *val += 6; + *val = 6; return 0; case 'G': - *val += 7; + *val = 7; return 0; case 'H': - *val += 8; + *val = 8; return 0; case 'I': - *val += 9; + *val = 9; return 0; case '}': return 1; case 'J': - *val += 1; + *val = 1; return 1; case 'K': - *val += 2; + *val = 2; return 1; case 'L': - *val += 3; + *val = 3; return 1; case 'M': - *val += 4; + *val = 4; return 1; case 'N': - *val += 5; + *val = 5; return 1; case 'O': - *val += 6; + *val = 6; return 1; case 'P': - *val += 7; + *val = 7; return 1; case 'Q': - *val += 8; + *val = 8; return 1; case 'R': - *val += 9; + *val = 9; return 1; } return 0; @@ -2898,34 +4280,46 @@ int cob_cmp_numdisp (const unsigned char *data, const size_t size, const cob_s64_t n, const cob_u32_t has_sign) { - const unsigned char *p; - cob_s64_t val = 0; - size_t inc; + register const unsigned char *p = data; + const unsigned char *p_end; + register cob_s64_t val = 0; - p = data; if (!has_sign) { if (n < 0) { return 1; } - for (inc = 0; inc < size; inc++, p++) { - val = (val * 10) + COB_D2I (*p); + p_end = p + size; + while (p != p_end) { + val = val * 10 + COB_D2I (*p++); } return (val < n) ? -1 : (val > n); } - for (inc = 0; inc < size - 1; inc++, p++) { - val = (val * 10) + COB_D2I (*p); + + /* safe-guard, should never happen */ + if (!size) { + return 0; + } + p_end = p + size - 1; + while (p != p_end) { + val = val * 10 + COB_D2I (*p++); } val *= 10; if (*p >= (unsigned char)'0' && *p <= (unsigned char)'9') { val += COB_D2I (*p); } else { if (COB_MODULE_PTR->ebcdic_sign) { - if (cob_get_long_ebcdic_sign (p, &val)) { + int sign_val = 0; + int sign = cob_get_long_ebcdic_sign (p, &sign_val); + val += sign_val; + if (sign) { val = -val; } } else { #ifdef COB_EBCDIC_MACHINE - if (cob_get_long_ascii_sign (p, &val)) { + int sign_val = 0; + int sign = cob_get_long_ascii_sign (p, &sign_val); + val += sign_val; + if (sign) { val = -val; } #else diff --git a/libcob/reportio.c b/libcob/reportio.c index d995a2cd6..6ffdf92f0 100644 --- a/libcob/reportio.c +++ b/libcob/reportio.c @@ -1,5 +1,5 @@ /* - Copyright (C) 2013-2022 Free Software Foundation, Inc. + Copyright (C) 2013-2023 Free Software Foundation, Inc. Written by Ron Norman, Simon Sobisch This file is part of GnuCOBOL. @@ -287,11 +287,9 @@ cob_add_fields (cob_field *op1, cob_field *op2, cob_field *rslt) cob_move(op1, &fld1); #ifdef COB_DEBUG_LOG - if(DEBUG_ISON("rw")) { - cob_field_to_string(op1, wrk, sizeof(wrk)-1); + if (DEBUG_ISON("rw")) { + (void)cob_field_to_string (op1, wrk, sizeof(wrk)-1, CCM_NONE); DEBUG_LOG("rw",("'%s' ",wrk)); - cob_field_to_string(op2, wrk, sizeof(wrk)-1); - DEBUG_LOG("rw",("to '%s' ",wrk)); } #endif @@ -302,13 +300,21 @@ cob_add_fields (cob_field *op1, cob_field *op2, cob_field *rslt) fld2.data = (unsigned char*)data2; memset(data2,'0',fld2.size); cob_move(op2, &fld2); + +#ifdef COB_DEBUG_LOG + if (DEBUG_ISON ("rw")) { + (void)cob_field_to_string (op2, wrk, sizeof(wrk) - 1, CCM_NONE); + DEBUG_LOG("rw",("to '%s' ",wrk)); + } +#endif + cob_add(&fld1,&fld2,0); cob_move(&fld1, rslt); /* Copy SUM back to result field */ #ifdef COB_DEBUG_LOG - if(DEBUG_ISON("rw")) { - cob_field_to_string(&fld1, wrk, sizeof(wrk)-1); + if (DEBUG_ISON("rw")) { + (void)cob_field_to_string (&fld1, wrk, sizeof(wrk)-1, CCM_NONE); DEBUG_LOG("rw",("--> '%s' ",wrk)); DEBUG_LOG("rw",("\n")); } @@ -323,48 +329,48 @@ dumpFlags(int flags, int ln, char *name) return; } - if(name == NULL) + if (name == NULL) name = (char*)""; - if(flags & COB_REPORT_HEADING) DEBUG_LOG("rw",("REPORT HEADING ")); - if(flags & COB_REPORT_FOOTING) DEBUG_LOG("rw",("REPORT FOOTING ")); - if(flags & COB_REPORT_PAGE_HEADING) DEBUG_LOG("rw",("PAGE HEADING ")); - if(flags & COB_REPORT_PAGE_FOOTING) DEBUG_LOG("rw",("PAGE FOOTING ")); - if(flags & COB_REPORT_CONTROL_HEADING) + if (flags & COB_REPORT_HEADING) DEBUG_LOG("rw",("REPORT HEADING ")); + if (flags & COB_REPORT_FOOTING) DEBUG_LOG("rw",("REPORT FOOTING ")); + if (flags & COB_REPORT_PAGE_HEADING) DEBUG_LOG("rw",("PAGE HEADING ")); + if (flags & COB_REPORT_PAGE_FOOTING) DEBUG_LOG("rw",("PAGE FOOTING ")); + if (flags & COB_REPORT_CONTROL_HEADING) DEBUG_LOG("rw",("CONTROL HEADING %s ",(flags & COB_REPORT_ALL)?"ALL":name)); - if(flags & COB_REPORT_CONTROL_HEADING_FINAL) DEBUG_LOG("rw",("CONTROL HEADING FINAL ")); - if(flags & COB_REPORT_CONTROL_FOOTING) + if (flags & COB_REPORT_CONTROL_HEADING_FINAL) DEBUG_LOG("rw",("CONTROL HEADING FINAL ")); + if (flags & COB_REPORT_CONTROL_FOOTING) DEBUG_LOG("rw",("CONTROL FOOTING %s ",(flags & COB_REPORT_ALL)?"ALL":name)); - if(flags & COB_REPORT_CONTROL_FOOTING_FINAL) DEBUG_LOG("rw",("CONTROL FOOTING FINAL ")); - if(flags & COB_REPORT_DETAIL) DEBUG_LOG("rw",("DETAIL ")); - if(flags & COB_REPORT_LINE_PLUS) {if(ln > 0) DEBUG_LOG("rw",("LINE PLUS %d ",ln));} - else if(flags & COB_REPORT_LINE) DEBUG_LOG("rw",("LINE %d ",ln)); - if(flags & COB_REPORT_LINE_NEXT_PAGE) DEBUG_LOG("rw",("LINE NEXT PAGE ")); - if(flags & COB_REPORT_NEXT_PAGE) DEBUG_LOG("rw",("NEXT PAGE ")); - if(flags & COB_REPORT_GROUP_INDICATE) DEBUG_LOG("rw",("GROUP INDICATE ")); - if(flags & COB_REPORT_COLUMN_PLUS) DEBUG_LOG("rw",("COLUMN PLUS ")); - if(flags & COB_REPORT_RESET_FINAL) DEBUG_LOG("rw",("RESET FINAL ")); - if(flags & COB_REPORT_COLUMN_LEFT) DEBUG_LOG("rw",("LEFT ")); - if(flags & COB_REPORT_COLUMN_RIGHT) DEBUG_LOG("rw",("RIGHT ")); - if(flags & COB_REPORT_COLUMN_CENTER) DEBUG_LOG("rw",("CENTER ")); - if(flags & COB_REPORT_GROUP_ITEM) DEBUG_LOG("rw",("GROUP ")); - if(flags & COB_REPORT_PRESENT) { - if(flags & COB_REPORT_NEGATE) { - if(flags & COB_REPORT_BEFORE) { + if (flags & COB_REPORT_CONTROL_FOOTING_FINAL) DEBUG_LOG("rw",("CONTROL FOOTING FINAL ")); + if (flags & COB_REPORT_DETAIL) DEBUG_LOG("rw",("DETAIL ")); + if (flags & COB_REPORT_LINE_PLUS) {if(ln > 0) DEBUG_LOG("rw",("LINE PLUS %d ",ln));} + else if (flags & COB_REPORT_LINE) DEBUG_LOG("rw",("LINE %d ",ln)); + if (flags & COB_REPORT_LINE_NEXT_PAGE) DEBUG_LOG("rw",("LINE NEXT PAGE ")); + if (flags & COB_REPORT_NEXT_PAGE) DEBUG_LOG("rw",("NEXT PAGE ")); + if (flags & COB_REPORT_GROUP_INDICATE) DEBUG_LOG("rw",("GROUP INDICATE ")); + if (flags & COB_REPORT_COLUMN_PLUS) DEBUG_LOG("rw",("COLUMN PLUS ")); + if (flags & COB_REPORT_RESET_FINAL) DEBUG_LOG("rw",("RESET FINAL ")); + if (flags & COB_REPORT_COLUMN_LEFT) DEBUG_LOG("rw",("LEFT ")); + if (flags & COB_REPORT_COLUMN_RIGHT) DEBUG_LOG("rw",("RIGHT ")); + if (flags & COB_REPORT_COLUMN_CENTER) DEBUG_LOG("rw",("CENTER ")); + if (flags & COB_REPORT_GROUP_ITEM) DEBUG_LOG("rw",("GROUP ")); + if (flags & COB_REPORT_PRESENT) { + if (flags & COB_REPORT_NEGATE) { + if (flags & COB_REPORT_BEFORE) { DEBUG_LOG("rw",("ABSENT BEFORE ")); } else { DEBUG_LOG("rw",("ABSENT AFTER ")); } } else { - if(flags & COB_REPORT_BEFORE) { + if (flags & COB_REPORT_BEFORE) { DEBUG_LOG("rw",("PRESENT BEFORE ")); } else { DEBUG_LOG("rw",("PRESENT AFTER ")); } } - if(flags & COB_REPORT_PAGE) DEBUG_LOG("rw",("PAGE ")); - if(flags & COB_REPORT_ALL) DEBUG_LOG("rw",("ALL ")); + if (flags & COB_REPORT_PAGE) DEBUG_LOG("rw",("PAGE ")); + if (flags & COB_REPORT_ALL) DEBUG_LOG("rw",("ALL ")); } - else if(flags & COB_REPORT_HAD_WHEN) DEBUG_LOG("rw",("WHEN ")); + else if (flags & COB_REPORT_HAD_WHEN) DEBUG_LOG("rw",("WHEN ")); } #endif @@ -412,25 +418,25 @@ reportDumpOneLine(const cob_report *r, cob_report_line *fl, int indent, int dump if(fl->report_flags & COB_REPORT_NEXT_GROUP_PAGE) DEBUG_LOG("rw",("NEXT GROUP PAGE ")); } if(fl->control) { - cob_field_to_string(fl->control, wrk, sizeof(wrk)-1); - if(wrk[0] >= ' ') + (void)cob_field_to_string (fl->control, wrk, sizeof(wrk) - 1, CCM_NONE); + if (wrk[0] >= ' ') DEBUG_LOG("rw",("Line Control %d is '%s' ",sequence,wrk)); } DEBUG_LOG("rw",("\n")); if(!(fl->flags & COB_REPORT_DETAIL)) dumpdata = 1; for(rf = fl->fields; rf; rf = rf->next) { DEBUG_LOG("rw",("%s %02d Field ",idnt,rf->level)); - if(rf->line) DEBUG_LOG("rw",("Line %2d ",rf->line)); - if(rf->column) DEBUG_LOG("rw",("Col %3d ",rf->column)); - if(rf->step_count) DEBUG_LOG("rw",("Step %3d ",rf->step_count)); - if(rf->next_group_line) DEBUG_LOG("rw",("NextGrp %d ",rf->next_group_line)); - if(dumpdata) { - if(!(rf->flags & COB_REPORT_GROUP_ITEM)) { - if(rf->f) { - if(rf->litval) { + if (rf->line) DEBUG_LOG("rw",("Line %2d ",rf->line)); + if (rf->column) DEBUG_LOG("rw",("Col %3d ",rf->column)); + if (rf->step_count) DEBUG_LOG("rw",("Step %3d ",rf->step_count)); + if (rf->next_group_line) DEBUG_LOG("rw",("NextGrp %d ",rf->next_group_line)); + if (dumpdata) { + if (!(rf->flags & COB_REPORT_GROUP_ITEM)) { + if (rf->f) { + if (rf->litval) { DEBUG_LOG("rw",(" \"%s\" ",rf->litval)); } else { - cob_field_to_string(rf->f, wrk, sizeof(wrk)-1); + (void)cob_field_to_string (rf->f, wrk, sizeof (wrk) - 1, CCM_NONE); if (wrk[0] >= ' ') { DEBUG_LOG("rw",(" '%s' ",wrk)); } @@ -445,7 +451,7 @@ reportDumpOneLine(const cob_report *r, cob_report_line *fl, int indent, int dump DEBUG_LOG("rw",("ABSENT")); else DEBUG_LOG("rw",("Not PRESENT")); - } else + } else if((rf->flags & COB_REPORT_GROUP_ITEM) && rf->suppress) { dumpFlags(rf->flags& ~(COB_REPORT_GROUP_ITEM|COB_REPORT_HAD_WHEN),rf->line,NULL); @@ -457,7 +463,7 @@ reportDumpOneLine(const cob_report *r, cob_report_line *fl, int indent, int dump && (!(rf->flags & COB_REPORT_PRESENT) || rf->present_now || !r->initiate_done) ) { strcpy(wrk,""); for(rc = r->controls; rc; rc = rc->next) { - if(rc->f == rf->control) { + if(rc->f == rf->control) { strcpy(wrk,rc->name); break; } @@ -467,7 +473,7 @@ reportDumpOneLine(const cob_report *r, cob_report_line *fl, int indent, int dump } } if(!(rf->flags & COB_REPORT_GROUP_ITEM) - && rf->suppress) + && rf->suppress) DEBUG_LOG("rw",("Suppress field")); DEBUG_LOG("rw",("\n")); } @@ -557,13 +563,13 @@ reportDump(const cob_report *r, const char *msg) for(c=r->controls; c; c = c->next) { DEBUG_LOG("rw",(" Control %d %s ",c->sequence,c->name)); if(c->f) { - cob_field_to_string(c->f, wrk, sizeof(wrk)-1); - if(wrk[0] >= ' ') + (void)cob_field_to_string (c->f, wrk, sizeof (wrk) - 1, CCM_NONE); + if (wrk[0] >= ' ') DEBUG_LOG("rw",("has '%s' ",wrk)); } if(c->val) { - cob_field_to_string(c->val, wrk, sizeof(wrk)-1); - if(wrk[0] >= ' ') + (void)cob_field_to_string (c->val, wrk, sizeof (wrk) - 1, CCM_NONE); + if (wrk[0] >= ' ') DEBUG_LOG("rw",("Value '%s' ",wrk)); } DEBUG_LOG("rw",("\n")); @@ -775,9 +781,9 @@ write_rec (cob_report *r, int opt) static void write_to_line (cob_report *r, int linen) { - if(r->curr_line <= linen) { + if (r->curr_line <= linen) { int adv = (linen - r->curr_line + 1); - write_rec (r, COB_WRITE_BEFORE|COB_WRITE_LINES|adv); + write_rec (r, COB_WRITE_BEFORE | COB_WRITE_LINES | adv); r->curr_line = linen + 1; r->incr_line = FALSE; if (r->curr_line > r->def_lines) { @@ -879,38 +885,40 @@ do_page_heading(cob_report *r) * Format one field into print line */ static void -print_field(cob_report_field *rf, char *rec) +print_field (cob_report_field *rf, char *rec) { char wrk[COB_SMALL_BUFF]; - int ln, k, i; - int dest_pos = (size_t)rf->column - 1; + size_t ln = 0, k, i; + size_t dest_pos = (size_t)rf->column - 1; + int ret; - cob_field_to_string(rf->f, wrk, sizeof(wrk)-1); - wrk[COB_SMALL_MAX] = 0; /* keep analyzer happy */ - ln = strlen(wrk); + ret = cob_field_to_string (rf->f, wrk, COB_SMALL_MAX, CCM_NONE); + if (ret > 0) { + ln = ret; + } if (rf->step_count > 0) memset (&rec[dest_pos], ' ', rf->step_count); - if(cobrpsetptr - && !cobrpsetptr->cob_col_just_lrc) { + if (cobrpsetptr + && !cobrpsetptr->cob_col_just_lrc) { /* Data justify is turned off, no adjustment */ } else - if((rf->flags & COB_REPORT_COLUMN_RIGHT) - && ln < rf->f->size) { + if ((rf->flags & COB_REPORT_COLUMN_RIGHT) + && ln < rf->f->size) { dest_pos += rf->f->size - ln; - } else - if((rf->flags & COB_REPORT_COLUMN_CENTER)) { - for(k=0; k < rf->f->size && wrk[0] == ' ' && ln > 0; k++) { /* remove leading spaces */ - memmove(wrk,&wrk[1],ln); + } else + if ((rf->flags & COB_REPORT_COLUMN_CENTER)) { + for (k=0; k < rf->f->size && wrk[0] == ' ' && ln > 0; k++) { /* remove leading spaces */ + memmove (wrk,&wrk[1],ln); ln--; } i = 1- (ln & 1); if (ln < rf->f->size) { dest_pos += (rf->f->size - ln - i) / 2; } - } else - if((rf->flags & COB_REPORT_COLUMN_LEFT)) { - for(k=0; k < rf->f->size && wrk[0] == ' ' && ln > 0; k++) { /* remove leading spaces */ - memmove(wrk,&wrk[1],ln); + } else + if ((rf->flags & COB_REPORT_COLUMN_LEFT)) { + for (k=0; k < rf->f->size && wrk[0] == ' ' && ln > 0; k++) { /* remove leading spaces */ + memmove (wrk,&wrk[1],ln); ln--; } } @@ -936,9 +944,9 @@ copy_line_fields (cob_report *r, cob_report_line *l, int doset) /* * Copy fields to print line area */ - for(rf = l->fields; rf; rf = rf->next) { - if((rf->flags & COB_REPORT_GROUP_ITEM)) { - if(rf->suppress) { + for (rf = l->fields; rf; rf = rf->next) { + if ((rf->flags & COB_REPORT_GROUP_ITEM)) { + if (rf->suppress) { /* group item SUPPRESSed printing, so skip to next field */ if (doset) rf->suppress = FALSE; @@ -958,19 +966,19 @@ copy_line_fields (cob_report *r, cob_report_line *l, int doset) && !rf->present_now) { continue; } - if(rf->suppress - || rf->group_indicate) { + if (rf->suppress + || rf->group_indicate) { if (rf->step_count > 0) memset (&rec[rf->column-1], ' ', rf->step_count); continue; } - if(rf->from.data) { /* Copy source field in */ - cob_move(&rf->from,rf->f); - print_field(rf, rec); - } else if(rf->sum) { /* Copy SUM field in */ - cob_move(rf->sum,rf->f); - print_field(rf, rec); - } else if(rf->litval) { /* Refresh literal value */ + if (rf->from.data) { /* Copy source field in */ + cob_move (&rf->from, rf->f); + print_field (rf, rec); + } else if (rf->sum) { /* Copy SUM field in */ + cob_move (rf->sum, rf->f); + print_field (rf, rec); + } else if (rf->litval) { /* Refresh literal value */ if (rf->f && COB_FIELD_IS_NUMERIC (rf->f)) { cob_field temp; @@ -983,7 +991,7 @@ copy_line_fields (cob_report *r, cob_report_line *l, int doset) } else { memcpy(&rec[rf->column-1], rf->litval, rf->litlen); } - } else if(rf->f) { + } else if (rf->f) { print_field(rf, rec); } if (doset @@ -999,7 +1007,7 @@ copy_fields (cob_report *r, cob_report_line *l, int doset) if (l == NULL || l->suppress) return; - + if((l->flags & COB_REPORT_LINE) || l->child == NULL) { copy_line_fields (r,l,doset); @@ -1022,24 +1030,29 @@ report_line (cob_report *r, cob_report_line *l) { cob_report_field *rf; cob_file *f = r->report_file; - char *rec,wrk[COB_SMALL_BUFF]; + char *rec; +#if 0 /* unused */ + char wrk[COB_SMALL_BUFF]; +#endif int bChkLinePlus = FALSE; rec = (char *)f->record->data; - if(rec) { - memset(rec,' ',f->record_max); - memset(wrk,0,sizeof(wrk)); + if (rec) { + memset (rec, ' ', f->record_max); +#if 0 /* unused */ + memset (wrk, 0, COB_SMALL_BUFF); +#endif if(r->curr_line > r->def_last_detail && !r->in_report_footing && !r->in_page_footing) { /* Page overflow */ r->incr_page = TRUE; - do_page_footing(r); - do_page_heading(r); + do_page_footing (r); + do_page_heading (r); } while( !(l->flags & COB_REPORT_LINE_PLUS) && !(l->flags & COB_REPORT_LINE) && l->child - && ((l->flags & COB_REPORT_CONTROL_FOOTING_FINAL) + && ((l->flags & COB_REPORT_CONTROL_FOOTING_FINAL) || (l->flags & COB_REPORT_CONTROL_HEADING_FINAL) )) { l = l->child; } @@ -1151,18 +1164,18 @@ report_line (cob_report *r, cob_report_line *l) return; } #ifdef COB_DEBUG_LOG - if(DEBUG_ISON("rw")) { - reportDumpOneLine(r,l,0,1); + if (DEBUG_ISON ("rw")) { + reportDumpOneLine (r, l, 0, 1); } #endif - for(rf = l->fields; rf; rf = rf->next) { + for (rf = l->fields; rf; rf = rf->next) { rf->present_now = (rf->flags & COB_REPORT_NEGATE)?1:0; } - if(rec) { + if (rec) { write_to_line (r, r->curr_line); } - set_next_info(r,l); + set_next_info (r,l); } /* @@ -1181,7 +1194,7 @@ report_line_and(cob_report *r, cob_report_line *l, int type) report_line_type(r,l->child,COB_REPORT_LINE); } return; - } + } l = l->child; } report_line_type(r,l,type); @@ -1789,12 +1802,12 @@ static int maxctl,ln,num,gengrp,last_use,ctlidx; for(rc = r->controls; rc; rc = rc->next) { rc->data_change = (cob_cmp(rc->f,rc->val) != 0); if(rc->data_change) { /* Data change, implies control break at lower levels */ -#if defined(COB_DEBUG_LOG) +#if defined(COB_DEBUG_LOG) DEBUG_LOG("rw",(" Control Break %s order %d changed from ", rc->name,rc->sequence)); - cob_field_to_string(rc->val, wrk, sizeof(wrk)-1); + (void)cob_field_to_string (rc->val, wrk, sizeof(wrk)-1, CCM_NONE); DEBUG_LOG("rw",("'%s' to ",wrk)); - cob_field_to_string(rc->f, wrk, sizeof(wrk)-1); + (void)cob_field_to_string (rc->f, wrk, sizeof(wrk)-1, CCM_NONE); DEBUG_LOG("rw",("'%s'\n",wrk)); #endif cob_move(rc->f, rc->sf); /* Save new CONTROL value */ @@ -1808,12 +1821,12 @@ static int maxctl,ln,num,gengrp,last_use,ctlidx; if(rc->sequence < maxctl && !rc->data_change) { rc->data_change = TRUE; -#if defined(COB_DEBUG_LOG) +#if defined(COB_DEBUG_LOG) DEBUG_LOG("rw",(" Control Break %s order %d also ", rc->name,rc->sequence)); - cob_field_to_string(rc->val, wrk, sizeof(wrk)-1); + cob_field_to_string(rc->val, wrk, sizeof(wrk)-1, CCM_NONE); DEBUG_LOG("rw",("'%s' to ",wrk)); - cob_field_to_string(rc->f, wrk, sizeof(wrk)-1); + cob_field_to_string(rc->f, wrk, sizeof(wrk)-1, CCM_NONE); DEBUG_LOG("rw",("'%s'\n",wrk)); #endif cob_move(rc->f, rc->sf); /* Save CONTROL value */ diff --git a/libcob/screenio.c b/libcob/screenio.c index 6de95d972..b5d55b01d 100644 --- a/libcob/screenio.c +++ b/libcob/screenio.c @@ -79,9 +79,8 @@ #endif #endif -/* Force symbol exports */ +/* include internal and external libcob definitions, forcing exports */ #define COB_LIB_EXPIMP -#include "common.h" #include "coblocal.h" #ifdef HAVE_CURSES_FREEALL @@ -351,43 +350,6 @@ cob_move_to_beg_of_last_line (void) } #endif -static short -cob_to_curses_color (cob_field *f, const short default_color) -{ - if (!f) { - return default_color; - } - /* compat for MF/ACU/... only use first 3 bits -> 0-7, - bit 4 is "included highlight/blink attribute" */ - switch (cob_get_int (f) & 7) { - case COB_SCREEN_BLACK: - return COLOR_BLACK; - case COB_SCREEN_BLUE: - return COLOR_BLUE; - case COB_SCREEN_GREEN: - return COLOR_GREEN; - case COB_SCREEN_CYAN: - return COLOR_CYAN; - case COB_SCREEN_RED: - return COLOR_RED; - case COB_SCREEN_MAGENTA: - return COLOR_MAGENTA; - case COB_SCREEN_YELLOW: - return COLOR_YELLOW; - case COB_SCREEN_WHITE: - return COLOR_WHITE; - default: - return default_color; - } -} - -/* compat for MF/ACU/... only use first 3 bits are colors -> 0-7, - bit 4 is "included highlight/blink attribute" -> an "extended" color */ -static int -has_extended_color (cob_field* f) -{ - return f && (cob_get_int (f) & 8); -} static short cob_get_color_pair (const short fg_color, const short bg_color) @@ -444,41 +406,349 @@ cob_activate_color_pair (const short color_pair_number) return ret; } + +static int +cob_to_curses_color (const int cob_color, short *curses_color) +{ + if (cob_color < 0 + || cob_color > 15) { + /* "invalid" color - nothing to do */ + return -1; + } + + /* compat for MF/ACU/... only use first 3 bits -> 0-7, + bit 4 is "included highlight/blink attribute" */ + switch (cob_color & 7) { + case COB_SCREEN_BLACK: + *curses_color = COLOR_BLACK; + return 0; + case COB_SCREEN_BLUE: + *curses_color = COLOR_BLUE; + return 0; + case COB_SCREEN_GREEN: + *curses_color = COLOR_GREEN; + return 0; + case COB_SCREEN_CYAN: + *curses_color = COLOR_CYAN; + return 0; + case COB_SCREEN_RED: + *curses_color = COLOR_RED; + return 0; + case COB_SCREEN_MAGENTA: + *curses_color = COLOR_MAGENTA; + return 0; + case COB_SCREEN_YELLOW: + *curses_color = COLOR_YELLOW; + return 0; + case COB_SCREEN_WHITE: + *curses_color = COLOR_WHITE; + return 0; + default: + return -1; + } +} + +/* compat for MF/ACU/... only first 3 bits are colors -> 0-7, + bit 4 is "included highlight/blink attribute" -> an "extended" color */ static void -cob_screen_attr (cob_field *fgc, cob_field *bgc, const cob_flags_t attr, - const enum screen_statement stmt) +adjust_attr_from_extended_color (cob_flags_t *attr, const int color, + const int handle_background) +{ + /* check for "valid" color and "extended attribute" set - return */ + if (color >= 0 + && (color & 8)) { + if (handle_background) { + *attr |= COB_SCREEN_BLINK; + } else { + *attr |= COB_SCREEN_HIGHLIGHT; + } + } +} + +/* adjust screenio attributes and color values from numeric attributes + added together in the COLOR field */ +static void +adjust_attr_from_color_field (cob_flags_t *attr, cob_field *color, + short *fg_color, short *bg_color) +{ + int col_attr = cob_get_int (color); /* added numeric value */ + + if (col_attr >= 131072) { + col_attr -= 131072; + /* BACKGROUND-HIGH pending */ + } + if (col_attr >= 65536) { + col_attr -= 65536; + /* BACKGROUND-LOW pending */ + } + if (col_attr >= 32768) { + col_attr -= 32768; + /* Protected - only relevant for SCREEN SECTION items + to have them temporarily as "output only"*/ + } + if (col_attr >= 16384) { + col_attr -= 16384; + *attr |= COB_SCREEN_BLINK; + } + if (col_attr >= 8192) { + col_attr -= 8192; + *attr |= COB_SCREEN_UNDERLINE; + } + if (col_attr >= 4096) { + col_attr -= 4096; + *attr |= COB_SCREEN_HIGHLIGHT; + } + if (col_attr >= 2048) { + col_attr -= 2048; + *attr |= COB_SCREEN_LOWLIGHT; + } + if (col_attr >= 1024) { + col_attr -= 1024; + *attr |= COB_SCREEN_REVERSE; + } + + if (col_attr >= 256) { + col_attr -= 256; + *bg_color = COLOR_WHITE; + } else if (col_attr >= 224) { + col_attr -= 224; + *bg_color = COLOR_YELLOW; + } else if (col_attr >= 192) { + col_attr -= 192; + *bg_color = COLOR_MAGENTA; + } else if (col_attr >= 160) { + col_attr -= 160; + *bg_color = COLOR_RED; + } else if (col_attr >= 128) { + col_attr -= 128; + *bg_color = COB_SCREEN_CYAN; + } else if (col_attr >= 96) { + col_attr -= 96; + *bg_color = COLOR_GREEN; + } else if (col_attr >= 64) { + col_attr -= 64; + *bg_color = COLOR_BLUE; + } else if (col_attr >= 32) { + col_attr -= 32; + *bg_color = COLOR_BLACK; + } + + if (col_attr >= 8) { + col_attr -= 8; + *fg_color = COLOR_WHITE; + } else if (col_attr >= 7) { + col_attr -= 7; + *fg_color = COLOR_YELLOW; + } else if (col_attr >= 6) { + col_attr -= 6; + *fg_color = COLOR_MAGENTA; + } else if (col_attr >= 5) { + col_attr -= 5; + *fg_color = COLOR_RED; + } else if (col_attr >= 4) { + col_attr -= 4; + *fg_color = COB_SCREEN_CYAN; + } else if (col_attr >= 3) { + col_attr -= 3; + *fg_color = COLOR_GREEN; + } else if (col_attr >= 2) { + col_attr -= 2; + *fg_color = COLOR_BLUE; + } else if (col_attr >= 1) { + col_attr -= 1; + *fg_color = COLOR_BLACK; + } +} + +static int +get_cob_color_from_color_value (const char *p) +{ + /* translate number */ + { + char *endptr; + const int cob_color = strtol (p, &endptr, 10); + /* number parsed - return as is */ + if (endptr != p) { + return cob_color; + } + } + + /* text translation */ + { + const size_t len = strlen (p); + if (len == 5) { + if (memcmp (p, "BLACK", 5) == 0) { + return COB_SCREEN_BLACK; + } + if (memcmp (p, "WHITE", 5) == 0) { + return COB_SCREEN_WHITE; + } + if (memcmp (p, "GREEN", 5) == 0) { + return COB_SCREEN_GREEN; + } + return -1; + } + if (len == 4) { + if (memcmp (p, "BLUE", 4) == 0) { + return COB_SCREEN_BLUE; + } + if (memcmp (p, "CYAN", 4) == 0) { + return COB_SCREEN_CYAN; + } + return -1; + } + if (len == 3) { + if (memcmp (p, "RED", 3) == 0) { + return COB_SCREEN_RED; + } + return -1; + } + if (len == 7) { + if (memcmp (p, "MAGENTA", 7) == 0) { + return COB_SCREEN_MAGENTA; + } + return -1; + } + if (len == 6 && memcmp (p, "YELLOW", 6) == 0) { + return COB_SCREEN_YELLOW; + } + } + + return -1; +} + +/* parse COBOL color name / number and set curses color number + attribute accordingly */ +static int +handle_control_field_color (cob_flags_t *attr, const char *p, + short *curses_color, const int handle_background) +{ + const int cob_color = get_cob_color_from_color_value (p); + int short curses_color_val; + + /* translate to curses, arly error return if not possible */ + if (cob_to_curses_color (cob_color, &curses_color_val) < 0) { + return -1; + } + + /* take over color */ + *curses_color = curses_color_val; + + /* attribute via renamed colors */ + adjust_attr_from_extended_color (attr, cob_color, handle_background); + + return 0; +} + +/* adjust screenio attributes and color values from named attributes + in CONTROL field */ +static void +adjust_attr_from_control_field (cob_flags_t *attr, cob_field *control, + short *fg_color, short *bg_color) +{ + char buffer[COB_MEDIUM_BUFF]; + cob_field_to_string (control, buffer, COB_MEDIUM_MAX, CCM_UPPER); + buffer[COB_MEDIUM_MAX] = 0; /* drop noise warning */ + + /* TODO: parse buffer here, adjusting attr, fg_color, bg_color + just some hard-coded examples... + that needs a real parsing logic from left to right, alias, tokens,... */ + if (strstr (buffer, "FGCOLOR=BLACK")) { + handle_control_field_color (attr, "BLACK", fg_color, 0); + } else if (strstr (buffer, "FGCOLOR=RED")) { + handle_control_field_color (attr, "RED", fg_color, 0); + } else if (strstr (buffer, "FGCOLOR = 6")) { + handle_control_field_color (attr, "6", fg_color, 0); + } else if (strstr (buffer, "FGCOLOR=MAGENTA")) { + handle_control_field_color (attr, "MAGENTA", fg_color, 0); + } + if (strstr (buffer, "BGCOLOR=WHITE")) { + handle_control_field_color (attr, "WHITE", bg_color, 1); + } + if (strstr (buffer, "NO-ECHO")) { + *attr |= COB_SCREEN_SECURE; + } + if (strstr (buffer, "NO REVERSE")) { + *attr &= ~COB_SCREEN_REVERSE; + } else if (strstr (buffer, "REVERSE")) { + *attr |= COB_SCREEN_REVERSE; + } + if (strstr (buffer, "NO ECHO")) { + *attr |= COB_SCREEN_NO_ECHO; + } + if (strstr (buffer, "NO HIGH")) { + *attr &= ~COB_SCREEN_HIGHLIGHT; + } else if (strstr (buffer, "HIGHLIGHT")) { + *attr |= COB_SCREEN_HIGHLIGHT; + } + if (strstr (buffer, "NO BLINK")) { + *attr &= ~COB_SCREEN_BLINK; + } else if (strstr (buffer, "BLINK")) { + *attr |= COB_SCREEN_BLINK; + } +} + +static void +cob_screen_attr (cob_field *fgc, cob_field *bgc, cob_flags_t attr, + cob_field *control, cob_field *color, const enum screen_statement stmt) { int line; int column; + const int cob_fg_color = fgc ? cob_get_int (fgc) : -1; + const int cob_bg_color = bgc ? cob_get_int (bgc) : -1; + short fg_color = -1; + short bg_color = -1; chtype styles = A_NORMAL; - attrset (A_NORMAL); + /* pre-set color value */ + cob_to_curses_color (cob_fg_color, &fg_color); + cob_to_curses_color (cob_bg_color, &bg_color); + + /* attribute via renamed colors */ + adjust_attr_from_extended_color (&attr, cob_fg_color, 0); + adjust_attr_from_extended_color (&attr, cob_bg_color, 1); + + /* ACU / RM? extension that may override colors + some attributes */ + if (color) { + adjust_attr_from_color_field (&attr, color, &fg_color, &bg_color); + } + + /* CONTROL - extension to override attributes and colors */ + if (control) { + adjust_attr_from_control_field (&attr, control, &fg_color, &bg_color); + } + + /* curses attributes from (possibly adjusted) COBOL attributes */ if (attr & COB_SCREEN_REVERSE) { styles |= A_REVERSE; } - if (attr & COB_SCREEN_HIGHLIGHT - || has_extended_color (fgc)) { + if (attr & COB_SCREEN_HIGHLIGHT) { styles |= A_BOLD; } if (attr & COB_SCREEN_LOWLIGHT) { styles |= A_DIM; } - if (attr & COB_SCREEN_BLINK - || has_extended_color (bgc)) { + if (attr & COB_SCREEN_BLINK) { styles |= A_BLINK; } if (attr & COB_SCREEN_UNDERLINE) { styles |= A_UNDERLINE; } - if (styles) { + + /* apply attributes */ + attrset (A_NORMAL); + if (styles != A_NORMAL) { attron (styles); } + + /* apply colors */ if (cob_has_color) { - short fg_color; - short bg_color; short color_pair_number; - fg_color = cob_to_curses_color (fgc, fore_color); - bg_color = cob_to_curses_color (bgc, back_color); + if (fg_color == -1) { + fg_color = fore_color; + } + if (bg_color == -1) { + bg_color = back_color; + } color_pair_number = cob_get_color_pair (fg_color, bg_color); cob_activate_color_pair (color_pair_number); } @@ -1113,10 +1383,10 @@ cob_screen_puts (cob_screen *s, cob_field *f, const cob_u32_t is_input, cob_current_y = line; cob_current_x = column; #if 0 /* RXWRXW - Attr */ - cob_screen_attr (s->foreg, s->backg, s->attr); + cob_screen_attr (s->foreg, s->backg, s->attr, NULL, NULL, stmt); #endif if (s->attr & COB_SCREEN_INPUT) { - cob_screen_attr (s->foreg, s->backg, s->attr, stmt); + cob_screen_attr (s->foreg, s->backg, s->attr, NULL, NULL, stmt); if (s->prompt) { default_prompt_char = s->prompt->data[0]; } else { @@ -1134,7 +1404,7 @@ cob_screen_puts (cob_screen *s, cob_field *f, const cob_u32_t is_input, } } } else if (!is_input) { - cob_screen_attr (s->foreg, s->backg, s->attr, stmt); + cob_screen_attr (s->foreg, s->backg, s->attr, NULL, NULL, stmt); cob_addnstr ((char *)f->data, (int)f->size); } else { column += (int)f->size; @@ -1715,7 +1985,7 @@ cob_screen_get_all (const int initial_curs, const int accept_timeout) if (status != ERR) { pending_accept = 0; } - cob_screen_attr (s->foreg, s->backg, s->attr, ACCEPT_STATEMENT); + cob_screen_attr (s->foreg, s->backg, s->attr, NULL, NULL, ACCEPT_STATEMENT); /* position for the SPECIAL-NAMES CURSOR clause, if given */ { @@ -1728,7 +1998,7 @@ cob_screen_get_all (const int initial_curs, const int accept_timeout) curr_index = fld_index; SET_FLD_AND_DATA_REFS (curr_index, sptr, s, sline, scolumn, right_pos, p); at_eof = 0; - cob_screen_attr (s->foreg, s->backg, s->attr, ACCEPT_STATEMENT); + cob_screen_attr (s->foreg, s->backg, s->attr, NULL, NULL, ACCEPT_STATEMENT); cob_move_cursor (cursor_clause_line, cursor_clause_col); } else { /* note: COBOL 2002 states that in this case the CURSOR clause is ignored, @@ -1819,7 +2089,7 @@ cob_screen_get_all (const int initial_curs, const int accept_timeout) SET_FLD_AND_DATA_REFS (curr_index, sptr, s, sline, scolumn, right_pos, p); at_eof = 0; move_to_initial_field_pos (s->field, sline, scolumn, right_pos, 0, &p); - cob_screen_attr (s->foreg, s->backg, s->attr, ACCEPT_STATEMENT); + cob_screen_attr (s->foreg, s->backg, s->attr, NULL, NULL, ACCEPT_STATEMENT); continue; case KEY_BTAB: finalize_field_input (s); @@ -1833,7 +2103,7 @@ cob_screen_get_all (const int initial_curs, const int accept_timeout) at_eof = 0; move_to_initial_field_pos (s->field, sline, scolumn, right_pos, ungetched, &p); ungetched = 0; - cob_screen_attr (s->foreg, s->backg, s->attr, ACCEPT_STATEMENT); + cob_screen_attr (s->foreg, s->backg, s->attr, NULL, NULL, ACCEPT_STATEMENT); continue; case KEY_UP: finalize_field_input (s); @@ -1842,7 +2112,7 @@ cob_screen_get_all (const int initial_curs, const int accept_timeout) SET_FLD_AND_DATA_REFS (curr_index, sptr, s, sline, scolumn, right_pos, p); at_eof = 0; move_to_initial_field_pos (s->field, sline, scolumn, right_pos, 0, &p); - cob_screen_attr (s->foreg, s->backg, s->attr, ACCEPT_STATEMENT); + cob_screen_attr (s->foreg, s->backg, s->attr, NULL, NULL, ACCEPT_STATEMENT); continue; case KEY_DOWN: finalize_field_input (s); @@ -1851,7 +2121,7 @@ cob_screen_get_all (const int initial_curs, const int accept_timeout) SET_FLD_AND_DATA_REFS (curr_index, sptr, s, sline, scolumn, right_pos, p); at_eof = 0; move_to_initial_field_pos (s->field, sline, scolumn, right_pos, 0, &p); - cob_screen_attr (s->foreg, s->backg, s->attr, ACCEPT_STATEMENT); + cob_screen_attr (s->foreg, s->backg, s->attr, NULL, NULL, ACCEPT_STATEMENT); continue; case KEY_HOME: finalize_field_input (s); @@ -1860,7 +2130,7 @@ cob_screen_get_all (const int initial_curs, const int accept_timeout) SET_FLD_AND_DATA_REFS (curr_index, sptr, s, sline, scolumn, right_pos, p); at_eof = 0; cob_move_cursor (sline, scolumn); - cob_screen_attr (s->foreg, s->backg, s->attr, ACCEPT_STATEMENT); + cob_screen_attr (s->foreg, s->backg, s->attr, NULL, NULL, ACCEPT_STATEMENT); continue; case KEY_END: finalize_field_input (s); @@ -1869,7 +2139,7 @@ cob_screen_get_all (const int initial_curs, const int accept_timeout) SET_FLD_AND_DATA_REFS (curr_index, sptr, s, sline, scolumn, right_pos, p); at_eof = 0; cob_move_cursor (sline, scolumn); - cob_screen_attr (s->foreg, s->backg, s->attr, ACCEPT_STATEMENT); + cob_screen_attr (s->foreg, s->backg, s->attr, NULL, NULL, ACCEPT_STATEMENT); continue; case KEY_BACKSPACE: /* Backspace key. */ @@ -2056,7 +2326,7 @@ cob_screen_get_all (const int initial_curs, const int accept_timeout) curr_index = fld_index; SET_FLD_AND_DATA_REFS (curr_index, sptr, s, sline, scolumn, right_pos, p); at_eof = 0; - cob_screen_attr (s->foreg, s->backg, s->attr, ACCEPT_STATEMENT); + cob_screen_attr (s->foreg, s->backg, s->attr, NULL, NULL, ACCEPT_STATEMENT); cob_move_cursor (mline, mcolumn); continue; } @@ -2330,7 +2600,7 @@ cob_prep_input (cob_screen *s) break; case COB_SCREEN_TYPE_ATTRIBUTE: #if 0 /* RXWRXW - Attr */ - cob_screen_attr (s->foreg, s->backg, s->attr); + cob_screen_attr (s->foreg, s->backg, s->attr, NULL, NULL, stmt); #endif break; default: @@ -2363,7 +2633,7 @@ cob_screen_iterate (cob_screen *s) } break; case COB_SCREEN_TYPE_ATTRIBUTE: - cob_screen_attr (s->foreg, s->backg, s->attr, + cob_screen_attr (s->foreg, s->backg, s->attr, NULL, NULL, DISPLAY_STATEMENT); break; default: @@ -2399,6 +2669,8 @@ line_where_last_stmt_ended (const enum screen_statement stmt) return stmt == DISPLAY_STATEMENT ? display_cursor_y : accept_cursor_y; } +/* resolve line + column from COBOL variables (several combinations + sizes) + and store them in the passed sline/column */ static void extract_line_and_col_vals (cob_field *line, cob_field *column, const enum screen_statement stmt, @@ -2597,9 +2869,9 @@ screen_accept (cob_screen *s, const int line, const int column, } static void -field_display (cob_field *f, const int line, const int column, cob_field *fgc, - cob_field *bgc, cob_field *fscroll, cob_field *size_is, - const cob_flags_t fattr) +field_display (cob_field *f, cob_flags_t fattr, const int line, const int column, + cob_field *fgc, cob_field *bgc, cob_field *fscroll, + cob_field *size_is, cob_field *control, cob_field *color) { int sline; int scolumn; @@ -2656,7 +2928,8 @@ field_display (cob_field *f, const int line, const int column, cob_field *fgc, pending_accept = 1; } - cob_screen_attr (fgc, bgc, fattr, DISPLAY_STATEMENT); + cob_screen_attr (fgc, bgc, fattr, control, color, DISPLAY_STATEMENT); + if (!(fattr & COB_SCREEN_NO_DISP)) { /* figurative constant and WITH SIZE repeats the literal */ if (size_is @@ -2693,9 +2966,10 @@ field_display (cob_field *f, const int line, const int column, cob_field *fgc, } static void -field_accept (cob_field *f, const int sline, const int scolumn, cob_field *fgc, - cob_field *bgc, cob_field *fscroll, cob_field *ftimeout, - cob_field *prompt, cob_field *size_is, const cob_flags_t fattr) +field_accept (cob_field *f, cob_flags_t fattr, const int sline, const int scolumn, + cob_field *fgc, cob_field *bgc, cob_field *fscroll, cob_field *ftimeout, + cob_field *prompt, cob_field *size_is, cob_field *cursor, + cob_field *control, cob_field *color) { unsigned char *p; unsigned char *p2; @@ -2710,20 +2984,17 @@ field_accept (cob_field *f, const int sline, const int scolumn, cob_field *fgc, int status; chtype prompt_char; /* prompt character */ chtype default_prompt_char; +#ifdef NCURSES_MOUSE_VERSION + MEVENT mevent; +#endif + size_t size_accept = 0; /* final size to accept */ cob_field temp_field; + #if 0 /* RXWRXW - Screen update */ cob_field char_temp; unsigned char space_buff[4]; -#endif -#ifdef NCURSES_MOUSE_VERSION - MEVENT mevent; -#endif - memset (COB_TERM_BUFF, ' ', (size_t)COB_MEDIUM_MAX); - temp_field.data = COB_TERM_BUFF; - temp_field.attr = &const_alpha_attr; -#if 0 /* RXWRXW - Screen update */ char_temp.data = space_buff; char_temp.attr = &const_alpha_attr; char_temp.size = 1; @@ -2764,13 +3035,13 @@ field_accept (cob_field *f, const int sline, const int scolumn, cob_field *fgc, pending_accept = 0; } - cob_screen_attr (fgc, bgc, fattr, ACCEPT_STATEMENT); + cob_screen_attr (fgc, bgc, fattr, control, color, ACCEPT_STATEMENT); if (f) { if (size_is) { size_accept = cob_get_int (size_is); /* SIZE ZERO is ignored */ - if (size_accept == 0) { + if (size_accept < 1) { size_accept = (int)f->size; } } else { @@ -2778,32 +3049,71 @@ field_accept (cob_field *f, const int sline, const int scolumn, cob_field *fgc, } p = COB_TERM_BUFF; + temp_field.data = COB_TERM_BUFF; + temp_field.attr = &const_alpha_attr; temp_field.size = size_accept; if (fattr & COB_SCREEN_UPDATE) { - cob_move (f, &temp_field); + cob_move (f, &temp_field); /* updates COB_TERM_BUFF */ + } else { + memset (COB_TERM_BUFF, ' ', size_accept); } raise_ec_on_truncation (size_accept); - for (count = 0; count < (size_t) cob_min_int (size_accept, f->size); count++) { - if (fattr & COB_SCREEN_SECURE) { - cob_addch_no_trunc_check (COB_CH_AS); - } else if (fattr & COB_SCREEN_NO_ECHO) { - cob_addch_no_trunc_check (COB_CH_SP); - } else if (fattr & COB_SCREEN_UPDATE) { - cob_addch_no_trunc_check ((const chtype)*p++); - } else if (COB_FIELD_IS_NUMERIC (f)) { - cob_addch_no_trunc_check ('0'); - } else if (fattr & COB_SCREEN_PROMPT) { - cob_addch_no_trunc_check (default_prompt_char); - } else { - cob_addch_no_trunc_check (COB_CH_SP); + { + const size_t disp_size = (size_t)cob_min_int (size_accept, f->size); + const unsigned char *p_set = p; + for (count = 0; count < disp_size; count++) { + if (*p && *p != ' ') { + p_set = p; + } + if (fattr & COB_SCREEN_SECURE) { + cob_addch_no_trunc_check (COB_CH_AS); + } else if (fattr & COB_SCREEN_NO_ECHO) { + cob_addch_no_trunc_check (COB_CH_SP); + } else if (fattr & COB_SCREEN_UPDATE) { + cob_addch_no_trunc_check ((const chtype)*p++); + } else if (COB_FIELD_IS_NUMERIC (f)) { + cob_addch_no_trunc_check ('0'); + } else if (fattr & COB_SCREEN_PROMPT) { + cob_addch_no_trunc_check (default_prompt_char); + } else { + cob_addch_no_trunc_check (COB_CH_SP); + } + } + /* SIZE IS greater than field, blank out trailing screen */ + if (size_accept > (int)f->size) { + cob_addnch (size_accept - f->size, COB_CH_SP); + } + /* start position within the field, if specified (all 1-based) */ + { + int cursor_off = 1; + if (cursor) { + /* position according to CURSOR clause */ + cursor_off = cob_get_int (cursor); + if (cursor_off >= 1) { + /* max: last_position with data */ + int last_data = p_set - COB_TERM_BUFF + 1; + if (last_data < cursor_off) { + cursor_off = last_data; + } + } else { + cursor_off = 1; + } + } else { + /* position from the SPECIAL-NAMES CURSOR clause */ + int cursor_clause_line; + int cursor_clause_col; + get_cursor_from_program (&cursor_clause_line, &cursor_clause_col); + + if (cursor_clause_line == sline + && cursor_clause_col > scolumn + && cursor_clause_col < scolumn + disp_size) { + cursor_off = cursor_clause_col - scolumn + 1; + } + } + move (sline, scolumn + cursor_off - 1); } } - /* SIZE IS greater than field, blank out trailing screen */ - if (size_accept > (int)f->size) { - cob_addnch (size_accept - f->size, COB_CH_SP); - } - cob_move_cursor (sline, scolumn); #if 0 /* RXWRXW - Screen update */ if (!(fattr & COB_SCREEN_UPDATE)) { if (cob_field_is_numeric_or_numeric_edited (f)) { @@ -2814,22 +3124,10 @@ field_accept (cob_field *f, const int sline, const int scolumn, cob_field *fgc, } #endif + /* positioning for following ACCEPTs */ accept_cursor_y = sline; accept_cursor_x = scolumn + size_accept; - /* position for the SPECIAL-NAMES CURSOR clause, if given */ - { - int cursor_clause_line; - int cursor_clause_col; - get_cursor_from_program (&cursor_clause_line, &cursor_clause_col); - - if (cursor_clause_line == sline - && cursor_clause_col > scolumn - && cursor_clause_col < scolumn + (int)f->size) { - cob_move_cursor (cursor_clause_line, cursor_clause_col); - } - } - right_pos = scolumn + size_accept - 1; p = COB_TERM_BUFF; } else { @@ -3362,12 +3660,31 @@ field_accept (cob_field *f, const int sline, const int scolumn, cob_field *fgc, (void)flushinp (); cob_beep (); } + + field_return: - pass_cursor_to_program (); + /* return position within the field, if specified (all 1-based) */ + if (cursor) { + /* horizontal position stored in CURSOR clause */ + if (!COB_FIELD_CONSTANT (cursor)) { + int cline; + int ccolumn; + getyx (stdscr, cline, ccolumn); + if (cline == sline) { + cob_set_int (cursor, ccolumn + 1 - scolumn); + } + } + } else { + /* screen position stored in the SPECIAL-NAMES CURSOR clause */ + pass_cursor_to_program (); + } handle_status (fret, ACCEPT_STATEMENT); if (f) { cob_move (&temp_field, f); cob_move_cursor (sline, right_pos + 1); +#if 0 /* possible cleanup to not "leak" input data */ + memset (COB_TERM_BUFF, ' ', size_accept); +#endif } refresh (); } @@ -3384,7 +3701,8 @@ field_accept_from_curpos (cob_field *f, cob_field *fgc, getyx (stdscr, cline, ccolumn); /* accept field */ - field_accept (f, cline, ccolumn, fgc, bgc, fscroll, ftimeout, prompt, size_is, fattr); + field_accept (f, (cob_flags_t)fattr, cline, ccolumn, fgc, bgc, + fscroll, ftimeout, prompt, size_is, NULL, NULL, NULL); } static void @@ -3398,11 +3716,13 @@ field_display_at_curpos (cob_field *f, /* Get current line, column. */ getyx (stdscr, cline, ccolumn); - field_display (f, cline, ccolumn, fgc, bgc, fscroll, size_is, fattr); + field_display (f, (cob_flags_t)fattr, cline, ccolumn, + fgc, bgc, fscroll, size_is, NULL, NULL); } /* Global functions */ +/* DISPLAY scr-name */ void cob_screen_display (cob_screen *s, cob_field *line, cob_field *column, const int zero_line_col_allowed) @@ -3412,9 +3732,11 @@ cob_screen_display (cob_screen *s, cob_field *line, cob_field *column, init_cob_screen_if_needed (); extract_line_and_col_vals (line, column, DISPLAY_STATEMENT, - zero_line_col_allowed, &sline, &scolumn); + zero_line_col_allowed, &sline, &scolumn); screen_display (s, sline, scolumn); } + +/* ACCEPT scr-name */ void cob_screen_accept (cob_screen *s, cob_field *line, cob_field *column, cob_field *ftimeout, const int zero_line_col_allowed) @@ -3423,46 +3745,201 @@ cob_screen_accept (cob_screen *s, cob_field *line, cob_field *column, int scolumn; extract_line_and_col_vals (line, column, ACCEPT_STATEMENT, - zero_line_col_allowed, &sline, &scolumn); + zero_line_col_allowed, &sline, &scolumn); screen_accept (s, sline, scolumn, ftimeout); } +/* DISPLAY scr-item WITH/AT */ +void +cob_display_field (cob_field *f, const cob_flags_t fattr, const char *parms, ...) +{ + cob_field *line = NULL; + cob_field *column = NULL; + cob_field *fgc = NULL; + cob_field *bgc = NULL; + cob_field *fscroll = NULL; + cob_field *size_is = NULL; + cob_field *control = NULL; + cob_field *color = NULL; + + /* + LINE/COL 0 is always allowed here as it is impossible to specify it in + the standard format (DISPLAY ... UPON CRT) and all implementations of + the extended screen format (DISPLAY ... WITH UNDERLINE, HIGHLIGHT, etc.) + require it. + */ + const int zero_line_col_allowed = 1; + + int sline; + int scolumn; + + va_list args; + const char *p = parms; + + va_start (args, parms); + for (;;) { + char type = *p++; + if (type == 0) { + break; + } + switch (type) { + case 'p': /* AT POS, currently combined, likely to be changed later */ + case 'l': /* AT LINE */ + line = va_arg (args, cob_field *); + break; + case 'c': /* AT COLUMN */ + column = va_arg (args, cob_field *); + break; + case 'f': /* FOREGROUND-COLOR IS */ + fgc = va_arg (args, cob_field *); + break; + case 'b': /* BACKGROUND-COLOR IS */ + bgc = va_arg (args, cob_field *); + break; + case 's': /* SCROLL UP | DOWN */ + fscroll = va_arg (args, cob_field *); + break; + case 'S': /* SIZE IS */ + size_is = va_arg (args, cob_field *); + break; + case 'C': /* CONTROL -> variable named attributes */ + control = va_arg (args, cob_field *); + break; + case 'L': /* CONTROL -> variable numeric added attributes */ + color = va_arg (args, cob_field *); + break; + default: + /* unknown attributes are explicit ignored */ + break; + } + parms++; + } + va_end (args); + + init_cob_screen_if_needed (); + + extract_line_and_col_vals (line, column, DISPLAY_STATEMENT, + zero_line_col_allowed, &sline, &scolumn); + field_display (f, fattr, sline, scolumn, fgc, bgc, + fscroll, size_is, control, color); +} + +/* ACCEPT scr-item WITH/AT */ +void +cob_accept_field (cob_field *f, const cob_flags_t fattr, const char *parms, ...) +{ + cob_field *line = NULL; + cob_field *column = NULL; + cob_field *fgc = NULL; + cob_field *bgc = NULL; + cob_field *fscroll = NULL; + cob_field *ftimeout = NULL; + cob_field *prompt = NULL; + cob_field *size_is = NULL; + cob_field *control = NULL; + cob_field *color = NULL; + cob_field *cursor = NULL; + + const int zero_line_col_allowed = 1; /* see comment in cob_display_field */ + + int sline; + int scolumn; + + va_list args; + const char *p = parms; + + va_start (args, parms); + for (;;) { + char type = *p++; + if (type == 0) { + break; + } + switch (type) { + case 'p': /* AT POS, currently combined, likely to be changed later */ + case 'l': /* AT LINE */ + line = va_arg (args, cob_field *); + break; + case 'c': /* AT COLUMN */ + column = va_arg (args, cob_field *); + break; + case 'f': /* FOREGROUND-COLOR IS */ + fgc = va_arg (args, cob_field *); + break; + case 'b': /* BACKGROUND-COLOR IS */ + bgc = va_arg (args, cob_field *); + break; + case 's': /* SCROLL UP | DOWN */ + fscroll = va_arg (args, cob_field *); + break; + case 't': /* TIME-OUT [AFTER] */ + ftimeout = va_arg (args, cob_field *); + break; + case 'P': /* PROMPT CHARACTER OS */ + prompt = va_arg (args, cob_field *); + break; + case 'S': /* SIZE IS */ + size_is = va_arg (args, cob_field *); + break; + case 'C': /* CONTROL -> variable named attributes */ + control = va_arg (args, cob_field *); + break; + case 'L': /* CONTROL -> variable numeric added attributes */ + color = va_arg (args, cob_field *); + break; + case 'R': /* CURSOR -> offset within field */ + cursor = va_arg (args, cob_field *); + break; + default: + /* unknown attributes are explicit ignored */ + break; + } + parms++; + } + va_end (args); + + extract_line_and_col_vals (line, column, ACCEPT_STATEMENT, + zero_line_col_allowed, &sline, &scolumn); + field_accept (f, fattr, sline, scolumn, fgc, bgc, + fscroll, ftimeout, prompt, size_is, cursor, control, color); +} + +/* DISPLAY scr-item WITH/AT - compat-function for < 3.2 */ void cob_field_display (cob_field *f, cob_field *line, cob_field *column, - cob_field *fgc, cob_field *bgc, cob_field *fscroll, - cob_field *size_is, const cob_flags_t fattr) + cob_field *fgc, cob_field *bgc, cob_field *fscroll, + cob_field *size_is, const cob_flags_t fattr) { + const int zero_line_col_allowed = 1; /* see comment in cob_display_field */ + int sline; int scolumn; init_cob_screen_if_needed (); - /* - LINE/COL 0 is always allowed as it is impossible to specify it in the - standard format (DISPLAY ... UPON CRT) and all implementations of the - extended screen format (DISPLAY ... WITH UNDERLINE, HIGHLIGHT, etc.) - require it. - */ - extract_line_and_col_vals (line, column, DISPLAY_STATEMENT, 1, &sline, - &scolumn); - field_display (f, sline, scolumn, fgc, bgc, fscroll, size_is, fattr); + extract_line_and_col_vals (line, column, DISPLAY_STATEMENT, + zero_line_col_allowed, &sline, &scolumn); + field_display (f, (cob_flags_t)fattr, sline, scolumn, fgc, bgc, + fscroll, size_is, NULL, NULL); } +/* ACCEPT scr-item WITH/AT - compat-function for < 3.2 */ void cob_field_accept (cob_field *f, cob_field *line, cob_field *column, cob_field *fgc, cob_field *bgc, cob_field *fscroll, cob_field *ftimeout, cob_field *prompt, cob_field *size_is, const cob_flags_t fattr) { + const int zero_line_col_allowed = 1; /* see comment in cob_display_field */ + int sline; int scolumn; - /* See above comment in cob_field_display. */ - extract_line_and_col_vals (line, column, ACCEPT_STATEMENT, 1, &sline, - &scolumn); - field_accept (f, sline, scolumn, fgc, bgc, fscroll, ftimeout, prompt, - size_is, fattr); + extract_line_and_col_vals (line, column, ACCEPT_STATEMENT, + zero_line_col_allowed, &sline, &scolumn); + field_accept (f, (cob_flags_t)fattr, sline, scolumn, fgc, bgc, + fscroll, ftimeout, prompt, size_is, NULL, NULL, NULL); } +/* x'E4' system call - clear screen */ int cob_sys_clear_screen (void) { @@ -3475,18 +3952,27 @@ cob_sys_clear_screen (void) return 0; } +/* internal function to temporarily set "extended screen mode" + to either on=1 or off=0; + note: does _not_ adjust cob_screen_initialized */ void cob_screen_set_mode (const cob_u32_t smode) { - init_cob_screen_if_needed (); + /* note: called internally only, so no need to check for cobglobptr */ if (!smode) { - refresh (); - def_prog_mode (); - endwin (); + if (cobglobptr->cob_screen_initialized) { + refresh (); + def_prog_mode (); + endwin (); + } } else { - reset_prog_mode (); - refresh (); + if (cobglobptr->cob_screen_initialized) { + reset_prog_mode (); + refresh (); + } else { + cob_screen_init (); + } } } @@ -3552,7 +4038,7 @@ cob_get_text (char *text, int size) COB_ATTR_INIT (COB_TYPE_ALPHANUMERIC, 0, 0, 0, NULL); field_accept_from_curpos (&field, NULL, NULL, NULL, NULL, NULL, NULL, 0); } else { - field_accept (NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, 0); + field_accept (NULL, 0, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); } return COB_ACCEPT_STATUS; @@ -3685,39 +4171,30 @@ cob_exit_screen_from_signal (int signal_safe_only) COB_UNUSED (signal_safe_only); } +/* DISPLAY scr-name */ void -cob_field_display (cob_field *f, cob_field *line, cob_field *column, - cob_field *fgc, cob_field *bgc, cob_field *fscroll, - cob_field *size_is, const cob_flags_t fattr) +cob_screen_display (cob_screen *s, cob_field *line, cob_field *column, + const int zero_line_col_allowed) { - COB_UNUSED (f); + COB_UNUSED (s); COB_UNUSED (line); COB_UNUSED (column); - COB_UNUSED (fgc); - COB_UNUSED (bgc); - COB_UNUSED (fscroll); - COB_UNUSED (size_is); - COB_UNUSED (fattr); + COB_UNUSED (zero_line_col_allowed); handle_status (9000, DISPLAY_STATEMENT); } +/* ACCEPT scr-name */ void -cob_field_accept (cob_field *f, cob_field *line, cob_field *column, - cob_field *fgc, cob_field *bgc, cob_field *fscroll, - cob_field *ftimeout, cob_field *prompt, - cob_field *size_is, const cob_flags_t fattr) +cob_screen_accept (cob_screen *s, cob_field *line, + cob_field *column, cob_field *ftimeout, + const int zero_line_col_allowed) { static int first_accept = 1; - COB_UNUSED (f); + COB_UNUSED (s); COB_UNUSED (line); COB_UNUSED (column); - COB_UNUSED (fgc); - COB_UNUSED (bgc); - COB_UNUSED (fscroll); COB_UNUSED (ftimeout); - COB_UNUSED (prompt); - COB_UNUSED (size_is); - COB_UNUSED (fattr); + COB_UNUSED (zero_line_col_allowed); if (first_accept) { first_accept = 0; cob_runtime_warning (_("runtime is not configured to support %s"), @@ -3726,28 +4203,24 @@ cob_field_accept (cob_field *f, cob_field *line, cob_field *column, handle_status (9000, ACCEPT_STATEMENT); } +/* DISPLAY scr-item WITH/AT */ void -cob_screen_display (cob_screen *s, cob_field *line, cob_field *column, - const int zero_line_col_allowed) +cob_display_field (cob_field *f, const cob_flags_t fattr, const char * parms, ...) { - COB_UNUSED (s); - COB_UNUSED (line); - COB_UNUSED (column); - COB_UNUSED (zero_line_col_allowed); + COB_UNUSED (f); + COB_UNUSED (fattr); + COB_UNUSED (parms); handle_status (9000, DISPLAY_STATEMENT); } +/* ACCEPT scr-item WITH/AT */ void -cob_screen_accept (cob_screen *s, cob_field *line, - cob_field *column, cob_field *ftimeout, - const int zero_line_col_allowed) +cob_accept_field (cob_field *f, const cob_flags_t fattr, const char *parms, ...) { static int first_accept = 1; - COB_UNUSED (s); - COB_UNUSED (line); - COB_UNUSED (column); - COB_UNUSED (ftimeout); - COB_UNUSED (zero_line_col_allowed); + COB_UNUSED (f); + COB_UNUSED (fattr); + COB_UNUSED (parms); if (first_accept) { first_accept = 0; cob_runtime_warning (_("runtime is not configured to support %s"), @@ -3756,6 +4229,42 @@ cob_screen_accept (cob_screen *s, cob_field *line, handle_status (9000, ACCEPT_STATEMENT); } +/* DISPLAY scr-item WITH/AT - compat-function for < 3.2 */ +void +cob_field_display (cob_field *f, cob_field *line, cob_field *column, + cob_field *fgc, cob_field *bgc, cob_field *fscroll, + cob_field *size_is, const cob_flags_t fattr) +{ + COB_UNUSED (line); + COB_UNUSED (column); + COB_UNUSED (fgc); + COB_UNUSED (bgc); + COB_UNUSED (fscroll); + COB_UNUSED (size_is); + cob_display_field (f, fattr, ""); +} + +/* ACCEPT scr-item WITH/AT - compat-function for < 3.2 */ +void +cob_field_accept (cob_field *f, cob_field *line, cob_field *column, + cob_field *fgc, cob_field *bgc, cob_field *fscroll, + cob_field *ftimeout, cob_field *prompt, + cob_field *size_is, const cob_flags_t fattr) +{ + COB_UNUSED (line); + COB_UNUSED (column); + COB_UNUSED (fgc); + COB_UNUSED (bgc); + COB_UNUSED (fscroll); + COB_UNUSED (ftimeout); + COB_UNUSED (prompt); + COB_UNUSED (size_is); + cob_accept_field (f, fattr, ""); +} + +/* internal function to temporarily set "extended screen mode" + to either on=1 or off=0; + note: does _not_ adjust cob_screen_initialized */ void cob_screen_set_mode (const cob_u32_t smode) { @@ -3763,30 +4272,31 @@ cob_screen_set_mode (const cob_u32_t smode) /* TODO: raise exception */ } +/* x'E4' system call - clear screen */ int cob_sys_clear_screen (void) { /* TODO: raise exception */ - return 0; + return 0; /* CHECKME: Should likely set an error code */ } #endif /* WITH_EXTENDED_SCREENIO */ void -cob_screen_line_col (cob_field *f, const int l_or_c) +cob_screen_line_col (cob_field *f, const int get_columns) { init_cob_screen_if_needed (); #ifdef WITH_EXTENDED_SCREENIO - if (!l_or_c) { - cob_set_int (f, (int)LINES); - } else { + if (get_columns) { cob_set_int (f, (int)COLS); + } else { + cob_set_int (f, (int)LINES); } #else - if (!l_or_c) { - cob_set_int (f, 24); - } else { + if (get_columns) { cob_set_int (f, 80); + } else { + cob_set_int (f, 24); } /* TODO: _possibly_ raise exception */ #endif @@ -4083,7 +4593,6 @@ cob_settings_screenio (void) #endif } - void cob_init_screenio (cob_global *lptr, cob_settings *sptr) { diff --git a/libcob/statement.def b/libcob/statement.def index f8cb62756..3d43f5e3d 100644 --- a/libcob/statement.def +++ b/libcob/statement.def @@ -1,5 +1,5 @@ /* - Copyright (C) 2022 Free Software Foundation, Inc. + Copyright (C) 2022-2023 Free Software Foundation, Inc. Written by Simon Sobisch This file is part of GnuCOBOL. @@ -20,9 +20,10 @@ /* COB_STATEMENT (name, string representation) - the order of these definitions may not change and - new entries must always be added to the end, as - those are used as enum entries and indexes + the order of these definitions may not change and new entries + must always be added to the end, as those are used both as enums + (cobc + libcob intern) _and_ as their integer values in generated + modules: cob_trace_statement (STMT_ADD) -> cob_trace_statement (1) */ COB_STATEMENT (STMT_ADD, "ADD") @@ -164,3 +165,6 @@ COB_STATEMENT (STMT_JSON_PARSE, "JSON GENERATE") COB_STATEMENT (STMT_XML_GENERATE, "XML GENERATE") COB_STATEMENT (STMT_XML_PARSE, "XML GENERATE") + +/* codegen intern only */ +COB_STATEMENT (STMT_INIT_STORAGE, "INIT STORAGE") diff --git a/libcob/strings.c b/libcob/strings.c index 184483753..488aa9007 100644 --- a/libcob/strings.c +++ b/libcob/strings.c @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2014, 2016-2020, 2022 Free Software Foundation, Inc. + Copyright (C) 2002-2014, 2016-2020, 2022-2023 Free Software Foundation, Inc. Written by Keisuke Nishida, Roger While, Edward Hart, Simon Sobisch This file is part of GnuCOBOL. @@ -29,9 +29,8 @@ #include #include -/* Force symbol exports */ +/* include internal and external libcob definitions, forcing exports */ #define COB_LIB_EXPIMP -#include "common.h" #include "coblocal.h" enum inspect_type { @@ -476,10 +475,10 @@ cob_inspect_init_common (cob_field *var) if (COB_FIELD_HAVE_SIGN (var) && !COB_FIELD_SIGN_SEPARATE(var)) { /* it is allowed to TRANSFORM / INSPECT a numeric display signed element; if it isn't stored separately we need to "remove" it here and add it back - in inspect_finish */ + in inspect_finish; note: we only handle NUMERIC DISPLAY here */ inspect_var_copy = *var; inspect_var = &inspect_var_copy; - inspect_sign = cob_real_get_sign (var); + inspect_sign = cob_real_get_sign (var, 0); } else { inspect_var = NULL; } diff --git a/libcob/termio.c b/libcob/termio.c index 8e6d1c5e3..f42f53ed4 100644 --- a/libcob/termio.c +++ b/libcob/termio.c @@ -40,9 +40,8 @@ #define SIGINT 2 #endif -/* Force symbol exports */ +/* include internal and external libcob definitions, forcing exports */ #define COB_LIB_EXPIMP -#include "common.h" #include "coblocal.h" /* Local variables */ @@ -64,37 +63,45 @@ static const cob_field_attr const_alpha_attr = static void display_numeric (cob_field *f, FILE *fp) { - int i; - unsigned short digits; - signed short scale; - int size; - cob_field_attr attr; - cob_field temp; + const unsigned short digits = COB_FIELD_DIGITS (f); + const signed short scale = COB_FIELD_SCALE (f); + const int has_sign = COB_FIELD_HAVE_SIGN (f) ? 1 : 0; + const int size + = digits + + ((scale < 0) ? scale : 0) /* subtract scale when negative */ + + has_sign; - digits = COB_FIELD_DIGITS (f); - scale = COB_FIELD_SCALE (f); - size = digits + (COB_FIELD_HAVE_SIGN (f) ? 1 : 0); + /* minimal validation */ if (size >= COB_MEDIUM_MAX) { fputs (_("(Not representable)"), fp); return; } - COB_ATTR_INIT (COB_TYPE_NUMERIC_DISPLAY, digits, scale, 0, NULL); - temp.size = size; - temp.data = COB_TERM_BUFF; - temp.attr = &attr; - if (COB_FIELD_HAVE_SIGN (f)) { - attr.flags = COB_FLAG_HAVE_SIGN | COB_FLAG_SIGN_SEPARATE; - if (COB_FIELD_SIGN_LEADING (f) || - COB_FIELD_TYPE (f) != COB_TYPE_NUMERIC_DISPLAY) { - attr.flags |= COB_FLAG_SIGN_LEADING; + + /* conversion to internal USAGE DISPLAY with SIGN SEPERATE */ + { + cob_field field; + cob_field_attr attr; + COB_ATTR_INIT (COB_TYPE_NUMERIC_DISPLAY, digits, COB_FIELD_SCALE (f), 0, NULL); + if (has_sign) { + attr.flags = COB_FLAG_HAVE_SIGN | COB_FLAG_SIGN_SEPARATE; + if (COB_FIELD_SIGN_LEADING (f) || + COB_FIELD_TYPE (f) != COB_TYPE_NUMERIC_DISPLAY) { + attr.flags |= COB_FLAG_SIGN_LEADING; + } } + COB_FIELD_INIT (size, COB_TERM_BUFF, &attr); + + cob_move (f, &field); } - cob_move (f, &temp); - for (i = 0; i < size; ++i) { - unsigned char chr = temp.data[i]; - if (putc (chr, fp) != chr) { - break; + /* output of data to viewport */ + { + register unsigned char *q = COB_TERM_BUFF; + const unsigned char *end = q + size; + for ( ; q < end; ++q) { + if (putc (*q, fp) != *q) { + break; + } } } } @@ -102,30 +109,37 @@ display_numeric (cob_field *f, FILE *fp) static void pretty_display_numeric (cob_field *f, FILE *fp) { - unsigned short digits = COB_FIELD_DIGITS (f); + unsigned short digits; const signed short scale = COB_FIELD_SCALE (f); - int size = digits + !!COB_FIELD_HAVE_SIGN (f) + !!scale; + const int has_sign = COB_FIELD_HAVE_SIGN (f) ? 1 : 0; + int size; /* Note: while we only need one pair, the double one works around a bug in old GCC versions https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53119 */ cob_pic_symbol pic[6] = {{ 0 }}; - cob_pic_symbol *p; + cob_pic_symbol *p = pic; + + digits = COB_FIELD_DIGITS (f); + if (scale == 0) { /* PIC 999 */ + size = digits + has_sign; + } else if (scale < 0) { /* PIC P99 */ + size = digits + has_sign; + } else { + if (digits < scale) { + digits = scale; /* PIC PP9*/ + } else { + /* PIC 9v99 */ + } + size = digits + has_sign + 1; + } if (size > COB_MEDIUM_MAX) { fputs (_("(Not representable)"), fp); return; } - if (scale < 0) { - digits -= scale; - size = digits + !!COB_FIELD_HAVE_SIGN (f); - } else if (digits < scale) { - digits = scale; - size = digits + !!COB_FIELD_HAVE_SIGN (f) + 1; - } - p = pic; - if (COB_FIELD_HAVE_SIGN (f)) { + if (has_sign) { if (COB_FIELD_SIGN_SEPARATE (f) - && !COB_FIELD_SIGN_LEADING(f)) { + && !COB_FIELD_SIGN_LEADING (f)) { /* done later */ } else { p->symbol = '+'; @@ -152,9 +166,9 @@ pretty_display_numeric (cob_field *f, FILE *fp) p->times_repeated = digits; ++p; } - if (COB_FIELD_HAVE_SIGN (f)) { + if (has_sign) { if (COB_FIELD_SIGN_SEPARATE (f) - && !COB_FIELD_SIGN_LEADING(f)) { + && !COB_FIELD_SIGN_LEADING (f)) { p->symbol = '+'; p->times_repeated = 1; ++p; @@ -163,22 +177,26 @@ pretty_display_numeric (cob_field *f, FILE *fp) p->symbol = '\0'; { - unsigned char *q = COB_TERM_BUFF; - const unsigned char *end = q + size; - cob_field_attr attr; - cob_field temp; - temp.size = size; - temp.data = q; - temp.attr = &attr; - COB_ATTR_INIT (COB_TYPE_NUMERIC_EDITED, digits, scale, 0, - (const cob_pic_symbol*)pic); - - cob_move (f, &temp); - while (q != end) { - const int chr = *q++; - if (chr == 0 /* pretty-display stops here */ - || putc (chr, fp) != chr) { - break; + /* conversion to internal USAGE DISPLAY EDITED */ + { + cob_field field; + cob_field_attr attr; + COB_FIELD_INIT (size, COB_TERM_BUFF, &attr); + COB_ATTR_INIT (COB_TYPE_NUMERIC_EDITED, digits, scale, 0, + (const cob_pic_symbol*)pic); + + cob_move (f, &field); + } + + /* output of data to viewport */ + { + register unsigned char *q = COB_TERM_BUFF; + const unsigned char *end = q + size; + for ( ; q < end; ++q) { + if (*q == 0 /* pretty-display stops here */ + || putc (*q, fp) != *q) { + break; + } } } } @@ -215,20 +233,18 @@ clean_double (char *wrk) return; } - if (strcmp(wrk,"-NAN") == 0 - || strcmp(wrk,"-NaNQ") == 0 - || strcmp(wrk,"-NaN") == 0 - || strcmp(wrk,"NAN") == 0 - || strcmp(wrk,"NaNQ") == 0) { - strcpy(wrk,"NaN"); + if (strcmp (wrk,"-NAN") == 0 + || strcmp (wrk,"-NaNQ") == 0 + || strcmp (wrk,"-NaN") == 0 + || strcmp (wrk,"NAN") == 0 + || strcmp (wrk,"NaNQ") == 0) { + strcpy (wrk,"NaN"); } } void cob_display_common (const cob_field *f, FILE *fp) { - - if (f->size == 0) { return; } @@ -282,20 +298,24 @@ cob_display_common (const cob_field *f, FILE *fp) fprintf (fp, "%x%x", *p >> 4, *p & 0xF); } return; - } else if (COB_FIELD_TYPE(f) == COB_TYPE_NUMERIC_COMP5) { - cob_print_realbin (f, fp, f->attr->digits); - return; - } else if (COB_FIELD_REAL_BINARY(f) - || (COB_FIELD_TYPE(f) == COB_TYPE_NUMERIC_BINARY - && !COB_MODULE_PTR->flag_pretty_display)) { - cob_print_realbin (f, fp, bin_digits[f->size]); - return; - } else if (COB_FIELD_IS_NUMERIC (f)) { + } + if (COB_FIELD_IS_NUMERIC (f)) { + /* CHECKME: consider to check for pretty-printing first */ + if (COB_FIELD_TYPE (f) == COB_TYPE_NUMERIC_COMP5) { + cob_print_realbin (f, fp, f->attr->digits); + return; + } + if ( COB_FIELD_REAL_BINARY (f) + || (COB_FIELD_TYPE(f) == COB_TYPE_NUMERIC_BINARY + && !COB_MODULE_PTR->flag_pretty_display)) { + cob_print_realbin (f, fp, bin_digits[f->size]); + return; + } if (COB_MODULE_PTR->flag_pretty_display) { pretty_display_numeric ((cob_field *)f, fp); - } else { - display_numeric ((cob_field *)f, fp); + return; } + display_numeric ((cob_field *)f, fp); return; } display_alnum (f, fp); diff --git a/tests/ChangeLog b/tests/ChangeLog index 34d038137..08514e441 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -6,6 +6,14 @@ under MSVC Release, by forcing a flush of stdout with fflush and using cob_free instead of free in C codes +2023-04-05 Simon Sobisch + + * atlocal.in: to allow running some test parts thousands of time for + performance checks without burning energy on every build, add define + "CHECK-PERF" of one of PERFSUFFIX or CGSUFFIX are set, + or if --enable-debug was specified during configure + * testsuite.src: adjusted several tests to use that option + 2023-02-21 Fabrice Le Fessant * testsuite.src/syn_literals.at: move syntax checks on literals diff --git a/tests/atlocal.in b/tests/atlocal.in index 585cbaea8..bdeb93498 100644 --- a/tests/atlocal.in +++ b/tests/atlocal.in @@ -63,10 +63,16 @@ LC_ALL=C export LC_ALL unset LANG +# define for performance checks (running code several thousand times) +if test "x$PERFSUFFIX" != "x" -o "x$CGSUFFIX" != "x" -o "@COB_ENABLE_DEBUG@" == yes; then + COBOL_FLAGS="-DCHECK-PERF ${COBOL_FLAGS}" +fi + # workaround to adjust the testsuite later: # FLAGS="-debug -Wall ${COBOL_FLAGS}" COBC="${COBC} -std=default" FLAGS="-debug -Wall ${COBOL_FLAGS} -fno-diagnostics-show-option" + COMPILE="${COBC} -x ${FLAGS}" COMPILE_ONLY="${COBC} -fsyntax-only ${FLAGS} -Wno-unsupported" COMPILE_MODULE="${COBC} -m ${FLAGS}" diff --git a/tests/cobol85/ChangeLog b/tests/cobol85/ChangeLog index 2bbece5f9..704993f38 100644 --- a/tests/cobol85/ChangeLog +++ b/tests/cobol85/ChangeLog @@ -7,6 +7,15 @@ * report.pl: place stderr from test runs into .out file +2023-04-07 Simon Sobisch + + * report.pl: check "cobc_flags" also for building lib; + ignore GO TO section for IC115A + * report.pl: move "cobol_default_flags" into separate variable and always + include --debug in there; drop the "no_debug" array in favor of setting + reasonable cobc_flags with specific suppression check + * Makefile.module.in: doc/todo notes + 2023-01-05 Simon Sobisch * Makefile.am: pass appropriate flags to cobc for compiling diff --git a/tests/cobol85/Makefile.module.in b/tests/cobol85/Makefile.module.in index cc2f35848..08193c62e 100644 --- a/tests/cobol85/Makefile.module.in +++ b/tests/cobol85/Makefile.module.in @@ -1,7 +1,7 @@ # # Makefile gnucobol/tests/cobol85/##MODULE## # -# Copyright (C) 2002-2012, 2015-2020,2022 Free Software Foundation, Inc. +# Copyright (C) 2002-2012, 2015-2020, 2022-2023 Free Software Foundation, Inc. # Written by Keisuke Nishida, Roger While, Simon Sobisch # # This file is part of GnuCOBOL. @@ -47,8 +47,8 @@ all-local: $(TESTS) $(TESTS_LOCAL) \ clean-log clean-db clean-debug clean-bin -# note: we use autotest setup files atconfig and atlocal to use the same -# test environment as in the testsuite +# note: these targets use the autotest setup files atconfig and atlocal which +# ensures to use the same test environment as in the testsuite test: @. ../../atconfig && . ../../atlocal && $(MAKE) $@-local @@ -71,6 +71,8 @@ test-O-local: @echo "Performing tests (optimized) for module directory ##MODULE##" @$(PERL) ##COB85DIR##/report.pl -O +# TODO: use option similar to automake making the lib target conditional on +# its existence via @HAS_LIBS@ which we'd sed away libs: @if test -d lib; then \ . ../../atconfig && . ../../atlocal && $(MAKE) $@-local; \ @@ -84,6 +86,8 @@ libs-local: fi $(TESTS): libs + +$(TESTS): @. ../../atconfig && . ../../atlocal && $(MAKE) $@-local $(TESTS_LOCAL): libs-local diff --git a/tests/cobol85/report.pl b/tests/cobol85/report.pl index 250989fe4..ba6ee4e4b 100755 --- a/tests/cobol85/report.pl +++ b/tests/cobol85/report.pl @@ -1,7 +1,7 @@ # # gnucobol/tests/cobol85/report.pl # -# Copyright (C) 2001-2012, 2016-2022 Free Software Foundation, Inc. +# Copyright (C) 2001-2012, 2016-2023 Free Software Foundation, Inc. # Written by Keisuke Nishida, Roger While, Simon Sobisch, Edward Hart # # This file is part of GnuCOBOL. @@ -44,7 +44,8 @@ my $force_cobcrun = 0; my $cobc = $ENV{"COBC"}; -my $cobol_flags= $ENV{"COBOL_FLAGS"}; +my $cobol_flags = $ENV{"COBOL_FLAGS"}; +my $cobol_default_flags = "-std=cobol85 --debug"; my $cobcrun = $ENV{"COBCRUN"}; my $cobcrun_direct = $ENV{"COBCRUN_DIRECT"}; @@ -59,14 +60,14 @@ } } -if (defined $opt) { - $opt = "-std=cobol85 $opt" -} else { - $opt = "-std=cobol85" +if (defined $cobol_flags ) { + $cobol_default_flags = "$cobol_default_flags $cobol_flags" } -if (defined $cobol_flags ) { - $opt = "$cobol_flags $opt" +if (defined $opt) { + $opt = "$cobol_default_flags $opt" +} else { + $opt = $cobol_default_flags } if (defined $cobc) { @@ -216,15 +217,24 @@ $cobc_flags{SM206A} = "-fdebugging-line"; -# Programs that won't run correctly with enabled runtime checks -# TODO for later: only deactivate specific checks by -fno-ec-... -my %no_debug; -$no_debug{DB101A} = 1; -$no_debug{DB104A} = 1; -$no_debug{DB201A} = 1; -$no_debug{DB202A} = 1; -$no_debug{DB203A} = 1; -$no_debug{DB204A} = 1; +# skip reasonable warning for unclean code +$cobc_flags{IC115A} = "-Wno-goto-section"; + +# skip specific runtime checks as needed + +# the following failed in previous versions with --debug, +# but don't do any more + +# MOVE from PIC S9999 SEPARATE with "expected" value of SPACES to a target +# of X(5) - RECHECK: is a conversion and therefore check needed? +$cobc_flags{DB201A} = "-fno-ec=data-incompatible"; + +# 2.2 generated DEBUG-LINE as numeric - but it always was X(6) +#$cobc_flags{DB101A} = "-fno-ec=data-incompatible"; +#$cobc_flags{DB104A} = "-fno-ec=data-incompatible"; +#$cobc_flags{DB202A} = "-fno-ec=data-incompatible"; +#$cobc_flags{DB203A} = "-fno-ec=data-incompatible"; +#$cobc_flags{DB204A} = "-fno-ec=data-incompatible"; # Programs that need to be "visual" inspected # NC113M: inspected additional to normal tests for output of hex values @@ -281,12 +291,20 @@ sub compile_lib { my $in = $_[0]; + my $in_clean = substr($in,4); + $in_clean =~ s/\.CBL//; + # export identifier in at_group (originally for autotest) # (mainly for use with external tools like valgrind) - $ENV{"at_group"} = "NIST_lib_" + substr($in,3); - print "$compile_module $in\n"; + $ENV{"at_group"} = "NIST_lib_" + $in_clean; + + my $compile_current = $compile_module; + if ($cobc_flags{$in_clean}) { + $compile_current = "$compile_current $cobc_flags{$in_clean}"; + } + print "$compile_current $in\n"; my $local_start = time; - $ret = system ("$TRAP $compile_module $in"); + $ret = system ("$TRAP $compile_current $in"); if ($ret != 0) { if (($ret >> 8) == 77) { die "Interrupted\n"; @@ -339,9 +357,6 @@ sub run_test { if ($exe =~ /^SM/) { $compile_current = "$compile_current -I ../copy"; } - if (!$no_debug{$exe}) { - $compile_current = "$compile_current -debug"; - } $compile_current = "$compile_current $in"; if ($raw_input{$exe}) { $cmd = "$cmd < $exe.inp"; diff --git a/tests/testsuite.src/configuration.at b/tests/testsuite.src/configuration.at index c31684170..ea07a47bf 100644 --- a/tests/testsuite.src/configuration.at +++ b/tests/testsuite.src/configuration.at @@ -876,13 +876,13 @@ AT_DATA([wide.cob], [ AT_CHECK([$COMPILE_ONLY -fformat=fixed wide.cob], [1], [], [wide.cob:10: error: continuation character expected wide.cob:9: error: invalid literal: ' ...' -wide.cob:9: error: missing terminating ' character +wide.cob:9: note: missing terminating ' character wide.cob:9: warning: optional period used ]) AT_CHECK([$COMPILE_ONLY -fformat=cobol85 wide.cob], [1], [], [wide.cob:10: error: continuation character expected wide.cob:9: error: invalid literal: ' ...' -wide.cob:9: error: missing terminating ' character +wide.cob:9: note: missing terminating ' character wide.cob:9: warning: optional period used ]) AT_CHECK([$COMPILE_ONLY -ftext-column=80 wide.cob], [0], [], []) diff --git a/tests/testsuite.src/data_binary.at b/tests/testsuite.src/data_binary.at index a4734f889..75c0a2b4c 100644 --- a/tests/testsuite.src/data_binary.at +++ b/tests/testsuite.src/data_binary.at @@ -1,4 +1,4 @@ -## Copyright (C) 2003-2012, 2014-2019,2023 Free Software Foundation, Inc. +## Copyright (C) 2003-2012, 2014-2019, 2022-2023 Free Software Foundation, Inc. ## Written by Keisuke Nishida, Roger While, Simon Sobisch, Ron Norman ## ## This file is part of GnuCOBOL. @@ -1202,6 +1202,12 @@ AT_DATA([prog.cob], [ AT_CHECK([$COMPILE prog.cob], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) +# also check "not optimized during codegen", +# which leads to other code-paths +AT_CHECK([$COMPILE -fno-fast-compare -C -o progalt.c prog.cob], [0], [], []) +AT_CHECK([$COMPILE progalt.c], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./progalt], [0], [], []) + AT_CLEANUP @@ -1254,7 +1260,7 @@ AT_CLEANUP AT_SETUP([COMP-4 Truncate]) -AT_KEYWORDS([Numeric]) +AT_KEYWORDS([binary numeric]) AT_DATA([prog.cob], [ IDENTIFICATION DIVISION. @@ -1336,9 +1342,11 @@ AT_DATA([prog.cob], [ 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. @@ -1396,3 +1404,868 @@ DISPLAY: 85 != BINARY : 217 ], []) AT_CLEANUP + + +AT_SETUP([MOVE DISPLAY to BINARY]) +AT_KEYWORDS([fundamental PPP]) + +AT_DATA([prog.cob], [ + 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. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], []) + +AT_CLEANUP + + +AT_SETUP([MOVE PACKED-DECIMAL to BINARY]) +AT_KEYWORDS([fundamental PPP]) + +AT_DATA([prog.cob], [ + 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. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], []) + +AT_CLEANUP + + +AT_SETUP([MOVE BINARY to PACKED-DECIMAL]) +AT_KEYWORDS([fundamental PPP]) + +AT_DATA([prog.cob], [ + 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. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], []) + +AT_CLEANUP + + +AT_SETUP([MOVE BINARY to BINARY]) +AT_KEYWORDS([fundamental PPP]) + +# note: for changes mind the nearly identical test in data_display.at + +AT_DATA([prog.cob], [ + 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. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], []) + +AT_CLEANUP + + +AT_SETUP([PPP COMP-5]) +AT_KEYWORDS([fundamental binary MOVE DISPLAY ADD SUBTRACT MULTIPLY DIVIDE]) + +# note: for changes mind the nearly identical test in data_display.at + +AT_DATA([prog.cob], [ + 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. +]) + +# GC4 version +#AT_CHECK([$COMPILE -std=mf -fpretty-display -debug prog.cob ], [0], [], []) + +# GC3 version +AT_CHECK([$COMPILE prog.cob], [0], [], []) + +# 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 +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], +[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_CLEANUP + + +AT_SETUP([arithmetic truncation with USAGE BINARY]) +AT_KEYWORDS([fundamental COMPUTE]) + +# note: for changes mind the nearly identical test in data_packed.at + +AT_DATA([prog.cob], [ + 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. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CLEANUP diff --git a/tests/testsuite.src/data_display.at b/tests/testsuite.src/data_display.at index ee5b63c33..3a4d33343 100644 --- a/tests/testsuite.src/data_display.at +++ b/tests/testsuite.src/data_display.at @@ -1,4 +1,4 @@ -## Copyright (C) 2003-2012, 2014-2015 Free Software Foundation, Inc. +## Copyright (C) 2003-2012, 2014-2015, 2013 Free Software Foundation, Inc. ## Written by Keisuke Nishida, Roger While, Simon Sobisch, Brian Tiffin ## ## This file is part of GnuCOBOL. @@ -220,3 +220,310 @@ AT_CHECK([$COBCRUN_DIRECT ./prog], [0], ]) AT_CLEANUP + + +AT_SETUP([MOVE DISPLAY to DISPLAY]) +AT_KEYWORDS([fundamental PPP]) + +# note: for changes mind the nearly identical test in data_binary.at + +AT_DATA([prog.cob], [ + 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. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], []) + +AT_CLEANUP + + +AT_SETUP([PPP DISPLAY]) +AT_KEYWORDS([fundamental MOVE ADD SUBTRACT MULTIPLY DIVIDE]) + +# note: for changes mind the nearly identical test in data_binary.at + +AT_DATA([prog.cob], [ + 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. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) + +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], +[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_CLEANUP + + +AT_SETUP([arithmetic truncation with USAGE DISPLAY]) +AT_KEYWORDS([fundamental COMPUTE]) + +# note: for changes mind the nearly identical test in data_binary.at + +AT_DATA([prog.cob], [ + 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. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CLEANUP diff --git a/tests/testsuite.src/data_packed.at b/tests/testsuite.src/data_packed.at index 08ef23182..75fd3d2e9 100644 --- a/tests/testsuite.src/data_packed.at +++ b/tests/testsuite.src/data_packed.at @@ -1,19 +1,20 @@ ## Copyright (C) 2003-2012, 2014-2016, 2018-2019, 2022-2023 ## Free Software Foundation, Inc. -## Written by Keisuke Nishida, Roger While, Edward Hart, Simon Sobisch -## +## Written by Keisuke Nishida, Roger While, Edward Hart, Simon Sobisch, +## Ron Norman, Chuck Haatvedt +## ## This file is part of GnuCOBOL. -## +## ## The GnuCOBOL compiler is free software: you can redistribute it ## and/or modify it under the terms of the GNU General Public License ## as published by the Free Software Foundation, either version 3 of the ## License, or (at your option) any later version. -## +## ## GnuCOBOL is distributed in the hope that it will be useful, ## but WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ## GNU General Public License for more details. -## +## ## You should have received a copy of the GNU General Public License ## along with GnuCOBOL. If not, see . @@ -171,6 +172,8 @@ AT_DATA([prog.cob], [ 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. @@ -188,6 +191,12 @@ AT_DATA([prog.cob], [ 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. ]) @@ -201,13 +210,16 @@ AT_CHECK([$COBCRUN_DIRECT ./prog], [0], 123 +000 -123 ++234 +-234 +234 ]) AT_CLEANUP AT_SETUP([PACKED-DECIMAL used with MOVE]) -AT_KEYWORDS([PACKED-DECIMAL DISPLAY]) +AT_KEYWORDS([DISPLAY]) AT_DATA([prog.cob], [ IDENTIFICATION DIVISION. @@ -220,6 +232,8 @@ AT_DATA([prog.cob], [ 01 X-S999 PIC S999 USAGE PACKED-DECIMAL. 01 C-P1234 PIC 9999 VALUE 1234. 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. @@ -237,6 +251,10 @@ AT_DATA([prog.cob], [ DISPLAY X-999. MOVE C-N1234 TO X-S999 DISPLAY X-S999. + MOVE B-N1234 TO X-999 + DISPLAY X-999. + MOVE B-N1234 TO X-S999 + DISPLAY X-S999. STOP RUN. ]) @@ -250,8 +268,556 @@ AT_CHECK([$COBCRUN_DIRECT ./prog], [0], -34 234 -234 +234 +-234 +]) + +AT_CLEANUP + + +AT_SETUP([MOVE PACKED-DECIMAL to PACKED-DECIMAL]) +AT_KEYWORDS([fundamental PPP]) + +AT_DATA([prog.cob], [ + 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. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], []) + +AT_CLEANUP + + +AT_SETUP([MOVE PACKED-DECIMAL to DISPLAY]) +AT_KEYWORDS([fundamenta PPPl]) + +AT_DATA([prog.cob], [ + 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. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], []) + +AT_CLEANUP + + +AT_SETUP([MOVE DISPLAY to PACKED-DECIMAL]) +AT_KEYWORDS([fundamental PPP]) + +AT_DATA([prog.cob], [ + 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 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. ]) +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], []) + AT_CLEANUP @@ -381,9 +947,11 @@ AT_DATA([prog.cob], [ 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. @@ -403,12 +971,17 @@ AT_DATA([prog.cob], [ 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". - STOP RUN. ]) AT_CHECK([$COMPILE prog.cob], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) +# also check "not optimized during codegen", +# which leads to other code-paths +AT_CHECK([$COMPILE -fno-fast-compare -C -o progalt.c prog.cob], [0], [], []) +AT_CHECK([$COMPILE progalt.c], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./progalt], [0], [], []) + AT_CLEANUP @@ -608,6 +1181,12 @@ AT_DATA([prog.cob], [ AT_CHECK([$COMPILE prog.cob], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) +# also check "not optimized during codegen", +# which leads to other code-paths +AT_CHECK([$COMPILE -fno-fast-compare -C -o progalt.c prog.cob], [0], [], []) +AT_CHECK([$COMPILE progalt.c], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./progalt], [0], [], []) + AT_CLEANUP @@ -722,9 +1301,11 @@ AT_DATA([prog.cob], [ 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. @@ -743,6 +1324,12 @@ AT_DATA([prog.cob], [ AT_CHECK([$COMPILE prog.cob], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) +# also check "not optimized during codegen", +# which leads to other code-paths +AT_CHECK([$COMPILE -fno-fast-compare -C -o progalt.c prog.cob], [0], [], []) +AT_CHECK([$COMPILE progalt.c], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./progalt], [0], [], []) + AT_CLEANUP @@ -840,6 +1427,12 @@ AT_DATA([prog.cob], [ 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. @@ -850,9 +1443,11 @@ AT_DATA([prog.cob], [ 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. @@ -999,14 +1594,27 @@ AT_DATA([prog.cob], [ * SETTING UP DATA FOR COMPARE WITH NEGATIVE PACKED ZERO MOVE LOW-VALUES TO PZ-01-X. - MOVE LOW-VALUES TO PZ-02-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 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". @@ -1016,11 +1624,17 @@ AT_DATA([prog.cob], [ AT_CHECK([$COMPILE prog.cob], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) +# also check "not optimized during codegen", +# which leads to other code-paths +AT_CHECK([$COMPILE -fno-fast-compare -C -o progalt.c prog.cob], [0], [], []) +AT_CHECK([$COMPILE progalt.c], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./progalt], [0], [], []) + AT_CLEANUP AT_SETUP([PPP COMP-3]) -AT_KEYWORDS([PPP]) +AT_KEYWORDS([PACKED-DECIMAL fundamental MOVE DISPLAY ADD SUBTRACT MULTIPLY DIVIDE]) AT_DATA([prog.cob], [ IDENTIFICATION DIVISION. @@ -1054,7 +1668,7 @@ AT_DATA([prog.cob], [ 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 failed: " WRK-AE-3. + 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 " .". @@ -1090,9 +1704,15 @@ AT_DATA([prog.cob], [ STOP RUN. ]) -AT_CHECK([$COBC -x -std=mf -w -fpretty-display -debug prog.cob ], [0], [], []) +# GC4 version +#AT_CHECK([$COBC -x -std=mf -w -fpretty-display -debug prog.cob ], [0], [], []) + +# GC3 version +# CHECKME: -Wno-strict-typing because of MOVE warning +AT_CHECK([$COMPILE -Wno-strict-typing prog.cob], [0], [], []) -AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [MOVE 1P17: -100000000000000000 : 2. +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], +[MOVE 1P17: -100000000000000000 : 2. MOVE A-E : 1 000/000/000/000/000 00. INIT X-1 : 091000 . INIT X-2 : 092000 . @@ -1110,7 +1730,9 @@ AT_CLEANUP AT_SETUP([PPP COMP-6]) -AT_KEYWORDS([PPP]) +AT_KEYWORDS([PACKED-DECIMAL fundamental MOVE DISPLAY ADD SUBTRACT MULTIPLY DIVIDE]) + +# note: for changes mind the nearly identical test in data_display.at AT_DATA([prog.cob], [ IDENTIFICATION DIVISION. @@ -1160,9 +1782,14 @@ AT_DATA([prog.cob], [ STOP RUN. ]) -AT_CHECK([$COMPILE -std=mf -fpretty-display -debug prog.cob ], [0], [], []) +# GC4 version +#AT_CHECK([$COMPILE -std=mf -fpretty-display -debug prog.cob ], [0], [], []) + +# GC3 version +AT_CHECK([$COMPILE prog.cob], [0], [], []) -AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [INIT X-1 : 091000 . +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], +[INIT X-1 : 091000 . INIT X-2 : 092000 . INIT X-4 : .000128 . INIT D-1 : 095000 . @@ -1177,69 +1804,38660 @@ MOVE X-2 : 193000:193000 . AT_CLEANUP -AT_SETUP([PPP COMP-5]) -AT_KEYWORDS([PPP]) +AT_SETUP([arithmetic truncation with USAGE PACKED-DECIMAL]) +AT_KEYWORDS([fundamental COMPUTE COMP-3]) + +# note: for changes mind the nearly identical test in data_display.at AT_DATA([prog.cob], [ 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. + 77 RESULT PIC 9(03) PACKED-DECIMAL. 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. + 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. ]) -AT_CHECK([$COMPILE -std=mf -fpretty-display -debug prog.cob ], [0], [], []) - -AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [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_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CLEANUP + + +AT_SETUP([MOVE between several BCD fields]) +AT_KEYWORDS([fundamental COMP-3 COMP-6 PACKED-DECIMAL]) + +# 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. + +AT_DATA([prog.cob], [ + 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). +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + + +AT_DATA([prog2.cob], [ + 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). +]) + +AT_CHECK([$COMPILE prog2.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog2], [0], [], []) + +AT_CLEANUP + + +AT_SETUP([BCD ADD and SUBTRACT w/o SIZE ERROR]) +AT_KEYWORDS([fundamental arithmetic COMP-3 COMP-6 PACKED-DECIMAL]) + +# 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. + +AT_DATA([prog.cob], [ + 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. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_DATA([prog2.cob], [ + 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'0C'. + 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'0C'. + 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. +]) + +AT_CHECK([$COMPILE prog2.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog2], [0], [], []) + +AT_CLEANUP + + +AT_SETUP([BCD ADD and SUBTRACT all ROUNDED MODE variants]) +AT_KEYWORDS([fundamental arithmetic COMP-3 COMP-6 PACKED-DECIMAL +ROUNDED MODE AWAY-FROM-ZERO NEAREST-AWAY-FROM-ZERO +NEAREST-EVEN NEAREST-TOWARD-ZERO TOWARD-GREATER TOWARD-LESSER +PROHIBITED TRUNCATION]) + +# 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. + +AT_DATA([prog.cob], [ + 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). +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_DATA([prog2.cob], [ + 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'0C'. + 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'0C'. + 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). +]) + +AT_CHECK([$COMPILE prog2.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog2], [0], [], []) AT_CLEANUP diff --git a/tests/testsuite.src/run_accept.at b/tests/testsuite.src/run_accept.at index 1fb92fbac..12fc3c4a6 100644 --- a/tests/testsuite.src/run_accept.at +++ b/tests/testsuite.src/run_accept.at @@ -181,12 +181,20 @@ AT_DATA([prog.cob], [ 05 WS-TIME-MICRO PIC 9(14). PROCEDURE DIVISION. + PERFORM RUN-TEST. + PERFORM RUN-VALIDATION. + >> IF CHECK-PERF IS DEFINED *> included performance check - PERFORM 50000 TIMES - ACCEPT WS-DATE-TODAY-9 FROM DATE - ACCEPT WS-TIME-NOW-9 FROM TIME - ACCEPT WS-TIME-MICRO FROM MICROSECOND-TIME - END-PERFORM + 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 @@ -247,8 +255,6 @@ AT_DATA([prog.cob], [ WITH NO ADVANCING UPON SYSOUT END-DISPLAY DISPLAY '.' UPON SYSOUT. - - STOP RUN. ]) AT_CHECK([$COMPILE prog.cob], [0], [], []) diff --git a/tests/testsuite.src/run_file.at b/tests/testsuite.src/run_file.at index 641c76914..2b17fb851 100644 --- a/tests/testsuite.src/run_file.at +++ b/tests/testsuite.src/run_file.at @@ -4846,14 +4846,14 @@ AT_DATA([prog.cob], [ 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 - END-DISPLAY - END-IF. + DISPLAY Z. STOP RUN. ]) @@ -4895,10 +4895,8 @@ AT_DATA([prog.cob], [ OPEN INPUT TEST-FILE. PERFORM P01 THRU P02. IF Z NOT = 3 - DISPLAY Z - END-DISPLAY - END-IF. - STOP RUN. + DISPLAY Z. + GOBACK. ]) # disabling the check for "something leaves the section" - as this is diff --git a/tests/testsuite.src/run_functions.at b/tests/testsuite.src/run_functions.at index c86b8a819..d3f9b4136 100644 --- a/tests/testsuite.src/run_functions.at +++ b/tests/testsuite.src/run_functions.at @@ -414,14 +414,16 @@ AT_CLEANUP AT_SETUP([FUNCTION HEX-OF and HEX-TO-CHAR]) -AT_KEYWORDS([functions literal ibm]) +AT_KEYWORDS([functions literal ibm national]) AT_DATA([prog.cob], [ IDENTIFICATION DIVISION. PROGRAM-ID. prog. DATA DIVISION. WORKING-STORAGE SECTION. - 01 X PIC 9(4) VALUE 12. + 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. @@ -429,14 +431,30 @@ AT_DATA([prog.cob], [ 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 = "30303132--" + IF HEXX NOT = "20303132--" >>ELIF CHARSET = 'EBCDIC' - IF HEXX NOT = "F0F0F1F2--" + IF HEXX NOT = "40F0F1F2--" >>ELSE IF 1 = 1 DISPLAY 'CHARSET UNKNOWN! PLEASE REPORT!' >>END-IF @@ -472,7 +490,11 @@ AT_DATA([prog.cob], [ 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 @@ -514,8 +536,6 @@ AT_DATA([prog.cob], [ DELIMITED BY SIZE INTO HEXX. IF NOT (HEXX (1:2) = x"3132" AND HEXX (3:) = "--------") DISPLAY "UNEXPECTED CHAR VALUE, expected 12-* got: " HEXX. - - STOP RUN. ]) AT_CHECK([$COMPILE -Wno-unfinished prog.cob], [0], [], []) diff --git a/tests/testsuite.src/run_fundamental.at b/tests/testsuite.src/run_fundamental.at index cb735f79a..e72b1473e 100644 --- a/tests/testsuite.src/run_fundamental.at +++ b/tests/testsuite.src/run_fundamental.at @@ -29,36 +29,21 @@ AT_DATA([prog.cob], [ IDENTIFICATION DIVISION. PROGRAM-ID. prog. PROCEDURE DIVISION. - DISPLAY "abc" - END-DISPLAY. - DISPLAY 123 - END-DISPLAY. - DISPLAY +123 - END-DISPLAY. - DISPLAY -123 - END-DISPLAY. - DISPLAY 12.3 - END-DISPLAY. - DISPLAY +12.3 - END-DISPLAY. - DISPLAY -12.3 - END-DISPLAY. - DISPLAY 1.23E0 - END-DISPLAY. - DISPLAY +1.23E0 - END-DISPLAY. - DISPLAY -1.23E0 - END-DISPLAY. - DISPLAY 12.3E-2 - END-DISPLAY. - DISPLAY +12.3E-2 - END-DISPLAY. - DISPLAY -12.3E-2 - END-DISPLAY. - DISPLAY B'0101' - END-DISPLAY. - DISPLAY BX'EC' - END-DISPLAY. + 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. ]) @@ -95,18 +80,12 @@ AT_DATA([prog.cob], [ SPECIAL-NAMES. DECIMAL-POINT IS COMMA. PROCEDURE DIVISION. - DISPLAY 12,3 - END-DISPLAY. - DISPLAY +12,3 - END-DISPLAY. - DISPLAY -12,3 - END-DISPLAY. - DISPLAY 1,23E0 - END-DISPLAY. - DISPLAY +1,23E0 - END-DISPLAY. - DISPLAY -1,23E0 - END-DISPLAY. + DISPLAY 12,3. + DISPLAY +12,3. + DISPLAY -12,3. + DISPLAY 1,23E0. + DISPLAY +1,23E0. + DISPLAY -1,23E0. STOP RUN. ]) @@ -1809,9 +1788,12 @@ AT_DATA([prog.cob], [ 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. @@ -1902,9 +1884,12 @@ AT_DATA([prog.cob], [ 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. @@ -3141,9 +3126,11 @@ AT_DATA([prog.cob], [ 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. @@ -3379,9 +3366,11 @@ AT_DATA([prog.cob], [ 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. @@ -3676,9 +3665,11 @@ AT_DATA([prog.cob], [ 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. @@ -3909,9 +3900,11 @@ AT_DATA([prog.cob], [ 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. @@ -5699,7 +5692,8 @@ AT_DATA([prog.cob], [ WORKING-STORAGE SECTION. 01 FLDX PIC X VALUE 'X'. 01 FLDXX PIC XX VALUE SPACES. - 01 FLDX500 PIC X(500) VALUE 'X5'. + 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'. @@ -5712,9 +5706,12 @@ AT_DATA([prog.cob], [ 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. @@ -5982,16 +5979,102 @@ AT_DATA([prog.cob], [ 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"!'. ]) AT_CHECK([$COMPILE prog.cob -Wno-constant-expression], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) +AT_CHECK([$COMPILE prog.cob -Wno-constant-expression -fno-constant-folding -fno-fast-compare], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + AT_CHECK([$COMPILE prog.cob -Wno-constant-expression -fno-constant-folding], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) -#AT_CHECK([$COMPILE prog.cob -Wno-constant-expression -fno-constant-folding -fno-fast-compare], [0], [], []) -#AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) +AT_CLEANUP + + +AT_SETUP([Expression numeric vs. DISPLAY]) +AT_KEYWORDS([expression conditional]) + +AT_DATA([prog.cob], [ + 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"'. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CHECK([$COMPILE prog.cob -Wno-constant-expression -fno-constant-folding -fno-fast-compare], [0], [], []) AT_CLEANUP @@ -6294,3 +6377,89 @@ prog.cob:7: note: value size is 3 AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) AT_CLEANUP + + +AT_SETUP([DISPLAY with P fields]) +AT_KEYWORDS([runmisc pretty-display pretty-printing pretty PACKED-DECIMAL]) + +# 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 + +AT_DATA([prog.cob], [ + 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. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], +[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_CHECK([$COMPILE -fno-pretty-display prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], +[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_DATA([packed.cob], [ + 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. +]) + +AT_CHECK([$COMPILE packed.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./packed], [0], +[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_CHECK([$COMPILE -fno-pretty-display packed.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./packed], [0], +[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_CLEANUP diff --git a/tests/testsuite.src/run_manual_screen.at b/tests/testsuite.src/run_manual_screen.at index c872c1723..99ddf8896 100644 --- a/tests/testsuite.src/run_manual_screen.at +++ b/tests/testsuite.src/run_manual_screen.at @@ -1,4 +1,4 @@ -## Copyright (C) 2014-2018,2020-2022 Free Software Foundation, Inc. +## Copyright (C) 2014-2018,2020-2023 Free Software Foundation, Inc. ## Written by Edward Hart, Simon Sobisch ## ## This file is part of GnuCOBOL. @@ -815,8 +815,9 @@ MANUAL_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) AT_CLEANUP -AT_SETUP([BACKGROUND- / FOREGROUND-COLOUR]) -AT_KEYWORDS([BACKGROUND-COLOR BACKGROUND-COLOUR FOREGROUND-COLOR COLOR COLOUR]) +AT_SETUP([SCREEN BACKGROUND- / FOREGROUND-COLOUR]) +AT_KEYWORDS([BACKGROUND-COLOR BACKGROUND-COLOUR FOREGROUND-COLOR +COLOR COLOUR HIGHLIGHT BLINK]) AT_SKIP_IF([test "$COB_HAS_CURSES" != "yes"]) @@ -921,6 +922,413 @@ MANUAL_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) AT_CLEANUP +AT_SETUP([SCREEN BACKGROUND- / FOREGROUND-COLOUR via COLOR]) +AT_KEYWORDS([BACKGROUND-COLOR BACKGROUND-COLOUR FOREGROUND-COLOR +COLOR COLOUR REVERSED]) + +# Currently not implemented +AT_XFAIL_IF([true]) + +AT_SKIP_IF([test "$COB_HAS_CURSES" != "yes"]) + +AT_DATA([prog.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. prog. + DATA DIVISION. + WORKING-STORAGE SECTION. + 01 dummy PIC X(10). + 01 success-flag PIC X. + 88 success VALUE 'Y', 'y'. + 77 CBLACK PIC 9(05) VALUE 1. + 77 CBLUE PIC 9(05) VALUE 2. + 77 CGREEN PIC 9(05) VALUE 3. + 77 CCYAN PIC 9(05) VALUE 4. + 77 CRED PIC 9(05) VALUE 5. + 77 CMAGENTA PIC 9(05) VALUE 6. + 77 CYELLOW PIC 9(05) VALUE 7. + 77 CWHITE PIC 9(05) VALUE 8. + + SCREEN SECTION. + 01 scr. + 03 PIC X(80) + VALUE 'Enter "y" if the text below matches the colour ' + & 'of the background/text.'. + 03 LINE + 1, COL 1, PIC X(80) + VALUE 'Note: the black text is on white background/the ' + & 'white background has black text'. + 03 LINE + 1, COL 1, PIC X(80) + VALUE 'to make the text visible.'. + + 03 LINE + 1. + 05 COL 1, PIC X(08) VALUE 'Black' COLOR CBLACK. + 05 COL + 2, PIC X(08) VALUE 'Blue' COLOR CBLUE. + 05 COL + 2, PIC X(08) VALUE 'Green' COLOR CGREEN. + 05 COL + 2, PIC X(08) VALUE 'Cyan' COLOR CCYAN. + 05 COL + 2, PIC X(08) VALUE 'Red' COLOR CRED. + 05 COL + 2, PIC X(08) VALUE 'Magenta' COLOR CMAGENTA. + 05 COL + 2, PIC X(15) VALUE 'Brown/Yellow' + COLOR CYELLOW. + 05 COL + 2, PIC X(08) VALUE 'White' COLOR CWHITE. + + 01 scr2. + 03 LINE 5. + 05 COL 1, PIC X(08) VALUE 'Black' BACKGROUND-COLOR 0 + FOREGROUND-COLOR 7. + 05 COL + 2, PIC X(08) VALUE 'Blue' BACKGROUND-COLOR 1. + 05 COL + 2, PIC X(08) VALUE 'Green' BACKGROUND-COLOR 2. + 05 COL + 2, PIC X(08) VALUE 'Cyan' BACKGROUND-COLOR 3. + 05 COL + 2, PIC X(08) VALUE 'Red' BACKGROUND-COLOR 4. + 05 COL + 2, PIC X(08) VALUE 'Magenta' BACKGROUND-COLOR 5. + 05 COL + 2, PIC X(15) VALUE 'Brown/Yellow' + BACKGROUND-COLOR 6. + 05 COL + 2, PIC X(08) VALUE 'White' BACKGROUND-COLOR 7 + FOREGROUND-COLOR 0. + + 03 success-field LINE + 2, COL 1, PIC X, REQUIRED, + TO success-flag FROM 'Y'. + + PROCEDURE DIVISION. + ADD 256 TO CBLACK + DISPLAY scr + ADD 1024 TO CBLACK, CBLUE, CGREEN, CCYAN, + CRED, CMAGENTA, CYELLOW, CWHITE + DISPLAY scr2 + ACCEPT scr + + IF success AND COB-CRT-STATUS = 0 + GOBACK RETURNING 0 + ELSE + GOBACK RETURNING 1 + END-IF + . +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +MANUAL_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CLEANUP + + +AT_SETUP([field BACKGROUND- / FOREGROUND-COLOUR]) +AT_KEYWORDS([BACKGROUND-COLOR BACKGROUND-COLOUR FOREGROUND-COLOR +COLOR COLOUR HIGHLIGHT BLINK]) + +AT_SKIP_IF([test "$COB_HAS_CURSES" != "yes"]) + +AT_DATA([prog.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. prog. + DATA DIVISION. + WORKING-STORAGE SECTION. + 01 dummy PIC X(10). + 01 success-flag PIC X. + 88 success VALUE 'Y', 'y'. + + SCREEN SECTION. + 01 scr. + 03 PIC X(80) + VALUE 'Enter "y" if the text below matches the colour ' + & 'of the background/text.'. + 03 LINE + 1, COL 1, PIC X(80) + VALUE 'Note: the black text is on white background/the ' + & 'white background has black text'. + 03 LINE + 1, COL 1, PIC X(80) + VALUE 'to make the text visible.'. + + 03 LINE + 1. + 05 COL 1, PIC X(08) VALUE 'Black' FOREGROUND-COLOR 0 + BACKGROUND-COLOR 7. + 05 COL + 2, PIC X(08) VALUE 'Blue' FOREGROUND-COLOR 1. + 05 COL + 2, PIC X(08) VALUE 'Green' FOREGROUND-COLOR 2. + 05 COL + 2, PIC X(08) VALUE 'Cyan' FOREGROUND-COLOR 3. + 05 COL + 2, PIC X(08) VALUE 'Red' FOREGROUND-COLOR 4. + 05 COL + 2, PIC X(08) VALUE 'Magenta' FOREGROUND-COLOR 5. + 05 COL + 2, PIC X(15) VALUE 'Brown/Yellow' + FOREGROUND-COLOR 6. + 05 COL + 2, PIC X(08) VALUE 'White' FOREGROUND-COLOR 7. + + 03 LINE + 1. + 05 COL 1, PIC X(08) VALUE 'Black' BACKGROUND-COLOR 0 + FOREGROUND-COLOR 7. + 05 COL + 2, PIC X(08) VALUE 'Blue' BACKGROUND-COLOR 1. + 05 COL + 2, PIC X(08) VALUE 'Green' BACKGROUND-COLOR 2. + 05 COL + 2, PIC X(08) VALUE 'Cyan' BACKGROUND-COLOR 3. + 05 COL + 2, PIC X(08) VALUE 'Red' BACKGROUND-COLOR 4. + 05 COL + 2, PIC X(08) VALUE 'Magenta' BACKGROUND-COLOR 5. + 05 COL + 2, PIC X(15) VALUE 'Brown/Yellow' + BACKGROUND-COLOR 6. + 05 COL + 2, PIC X(08) VALUE 'White' BACKGROUND-COLOR 7 + FOREGROUND-COLOR 0. + + 03 LINE + 2. + 03 PIC X(80) + VALUE 'The following is the same as above, ' + & 'with "extended" attributes set;'. + 03 LINE + 1, COL 1, PIC X(80) + VALUE 'this should have the same effect as otherwise ' + & 'highlighted for the first line'. + 03 LINE + 1, COL 1, PIC X(80) + VALUE 'and blinking for the second one.'. + + 03 LINE + 1. + 05 COL 1, PIC X(08) VALUE 'Black' FOREGROUND-COLOR 8 + BACKGROUND-COLOR 0. + 05 COL + 2, PIC X(08) VALUE 'Blue' FOREGROUND-COLOR 9. + 05 COL + 2, PIC X(08) VALUE 'Green' FOREGROUND-COLOR 10. + 05 COL + 2, PIC X(08) VALUE 'Cyan' FOREGROUND-COLOR 11. + 05 COL + 2, PIC X(08) VALUE 'Red' FOREGROUND-COLOR 12. + 05 COL + 2, PIC X(08) VALUE 'Magenta' FOREGROUND-COLOR 13. + 05 COL + 2, PIC X(15) VALUE 'Brown/Yellow' + FOREGROUND-COLOR 14. + 05 COL + 2, PIC X(08) VALUE 'White' FOREGROUND-COLOR 15. + + 03 LINE + 1. + 05 COL 1, PIC X(08) VALUE 'Black' BACKGROUND-COLOR 8 + FOREGROUND-COLOR 15. + 05 COL + 2, PIC X(08) VALUE 'Blue' BACKGROUND-COLOR 9. + 05 COL + 2, PIC X(08) VALUE 'Green' BACKGROUND-COLOR 10. + 05 COL + 2, PIC X(08) VALUE 'Cyan' BACKGROUND-COLOR 11. + 05 COL + 2, PIC X(08) VALUE 'Red' BACKGROUND-COLOR 12. + 05 COL + 2, PIC X(08) VALUE 'Magenta' BACKGROUND-COLOR 13. + 05 COL + 2, PIC X(15) VALUE 'Brown/Yellow' + BACKGROUND-COLOR 14. + 05 COL + 2, PIC X(08) VALUE 'White' BACKGROUND-COLOR 15 + FOREGROUND-COLOR 8. + + 03 success-field LINE + 2, COL 1, PIC X, REQUIRED, + TO success-flag FROM 'Y'. + + PROCEDURE DIVISION. + DISPLAY scr + ACCEPT scr + + IF success AND COB-CRT-STATUS = 0 + GOBACK RETURNING 0 + ELSE + GOBACK RETURNING 1 + END-IF + . +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +MANUAL_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CLEANUP + + +AT_SETUP([field BACKGROUND- / FOREGROUND-COLOUR via COLOR]) +AT_KEYWORDS([BACKGROUND-COLOR BACKGROUND-COLOUR FOREGROUND-COLOR +COLOR COLOUR REVERSED HIGHLIGHT BLINK]) + +AT_SKIP_IF([test "$COB_HAS_CURSES" != "yes"]) + +AT_DATA([prog.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. prog. + DATA DIVISION. + WORKING-STORAGE SECTION. + 01 success-flag PIC X VALUE 'Y'. + 88 success VALUE 'Y', 'y'. + + 77 CBLACK PIC 9(05) COMP-5 VALUE 1. + 77 CBLUE PIC 9(05) COMP-5 VALUE 2. + 77 CGREEN PIC 9(05) COMP-5 VALUE 3. + 77 CCYAN PIC 9(05) COMP-5 VALUE 4. + 77 CRED PIC 9(05) COMP-5 VALUE 5. + 77 CMAGENTA PIC 9(05) COMP-5 VALUE 6. + 77 CYELLOW PIC 9(05) COMP-5 VALUE 7. + 77 CWHITE PIC 9(05) COMP-5 VALUE 8. + + 77 LIN PIC 99 COMP-5. + + 01 scr1 PIC X(80) + VALUE 'Enter "y" if the text below matches the colour ' + & 'of the background/text.'. + 01 scr2 PIC X(80) + VALUE 'Note: the black text is on white background/the ' + & 'white background has black text'. + 01 scr3 PIC X(80) + VALUE 'to make the text visible.'. + 01 scr8 PIC X(80) + VALUE 'following lines should be identical but ' + & 'highlighted for the first line'. + 01 scr9 PIC X(80) + VALUE 'and blinking for the second one.'. + + 01 scrblack PIC X(08) VALUE 'Black'. + 01 scrblue PIC X(08) VALUE 'Blue'. + 01 scrgreen PIC X(08) VALUE 'Green'. + 01 scrcyan PIC X(08) VALUE 'Cyan'. + 01 scrred PIC X(08) VALUE 'Red'. + 01 scrmaggy PIC X(08) VALUE 'Magenta'. + 01 scryell PIC X(14) VALUE 'Brown/Yellow'. + 01 scrwhite PIC X(08) VALUE 'White'. + + PROCEDURE DIVISION. + testme. + ADD 256 TO CBLACK + DISPLAY scr1 AT 0102 + DISPLAY scr2 AT 0202 + DISPLAY scr3 AT 0303 + MOVE 5 TO LIN + PERFORM dspcol + ADD 1024 TO CBLACK, CBLUE, CGREEN, CCYAN, + CRED, CMAGENTA, CYELLOW, CWHITE + MOVE 6 TO LIN + PERFORM dspcol + SUBTRACT 1024 FROM CBLACK, CBLUE, CGREEN, CCYAN, + CRED, CMAGENTA, CYELLOW, CWHITE + * + DISPLAY scr8 AT 0802 + DISPLAY scr9 AT 0903 + ADD 4096 TO CBLACK, CBLUE, CGREEN, CCYAN, + CRED, CMAGENTA, CYELLOW, CWHITE + MOVE 11 TO LIN + PERFORM dspcol + SUBTRACT 4096 FROM CBLACK, CBLUE, CGREEN, CCYAN, + CRED, CMAGENTA, CYELLOW, CWHITE + ADD 1024, 16384 TO CBLACK, CBLUE, CGREEN, CCYAN, + CRED, CMAGENTA, CYELLOW, CWHITE + MOVE 12 TO LIN + PERFORM dspcol + * + ACCEPT success-flag AT 1401 UPDATE REQUIRED + + IF success AND COB-CRT-STATUS = 0 + GOBACK RETURNING 0 + ELSE + GOBACK RETURNING 1. + + dspcol. + DISPLAY scrblack LINE LIN COL 1, COLOR CBLACK. + DISPLAY scrblue LINE LIN COL 11, COLOR CBLUE. + DISPLAY scrgreen LINE LIN COL 21, COLOR CGREEN. + DISPLAY scrcyan LINE LIN COL 31, COLOR CCYAN. + DISPLAY scrred LINE LIN COL 41, COLOR CRED. + DISPLAY scrmaggy LINE LIN COL 51, COLOR CMAGENTA. + DISPLAY scryell LINE LIN COL 61, COLOR CYELLOW. + DISPLAY scrwhite LINE LIN COL 77, COLOR CWHITE. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +MANUAL_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CLEANUP + + +AT_SETUP([field BACKGROUND- / FOREGROUND-COLOUR via CONTROL]) +AT_KEYWORDS([BACKGROUND-COLOR BACKGROUND-COLOUR FOREGROUND-COLOR +COLOR COLOUR REVERSED HIGHLIGHT BLINK]) + +# Currently unfinished in libcob only +AT_XFAIL_IF([true]) + + +AT_SKIP_IF([test "$COB_HAS_CURSES" != "yes"]) + +AT_DATA([prog.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. prog. + DATA DIVISION. + WORKING-STORAGE SECTION. + 01 success-flag PIC X VALUE 'Y'. + 88 success VALUE 'Y', 'y'. + + * ACU: "=", names only + 77 CBLACK PIC X(99) VALUE "FGCOLOR=BLACK, " + & "BGCOLOR=WHITE,". + 77 CBLUE PIC X(99) VALUE "FGCOLOR=BLUE , " + & "BGCOLOR=BLACK,". + * MF: "IS" or "=" or " ", also extended color numbers + 77 CGREEN PIC X(99) VALUE "FGCOLOR IS GREEN, " + & "BGCOLOR BLACK,". + 77 CCYAN PIC X(99) VALUE "FGCOLOR =CYAN, " + & "BGCOLOR= BLACK, ". + 77 CRED PIC X(99) VALUE "FGCOLOR=RED, " + & "BGCOLOR=BLACK, ". + 77 CMAGENTA PIC X(99) VALUE "FGCOLOR=MAGENTA, " + & "BGCOLOR=BLACK,". + 77 CYELLOW PIC X(99) VALUE "FGCOLOR = 6, " + & "BGCOLOR=BLACK,". + 77 CWHITE PIC X(99) VALUE "FGCOLOR=WHITE, " + & "BGCOLOR=BLACK, ". + + 77 LIN PIC 99 COMP-5. + + 01 scr1 PIC X(80) + VALUE 'Enter "y" if the text below matches the colour ' + & 'of the background/text.'. + 01 scr2 PIC X(80) + VALUE 'Note: the black text is on white background/the ' + & 'white background has black text'. + 01 scr3 PIC X(80) + VALUE 'to make the text visible.'. + 01 scr8 PIC X(80) + VALUE 'following lines should be identical but ' + & 'highlighted for the first line'. + 01 scr9 PIC X(80) + VALUE 'and blinking for the second one.'. + + 01 scrblack PIC X(08) VALUE 'Black'. + 01 scrblue PIC X(08) VALUE 'Blue'. + 01 scrgreen PIC X(08) VALUE 'Green'. + 01 scrcyan PIC X(08) VALUE 'Cyan'. + 01 scrred PIC X(08) VALUE 'Red'. + 01 scrmaggy PIC X(08) VALUE 'Magenta'. + 01 scryell PIC X(14) VALUE 'Brown/Yellow'. + 01 scrwhite PIC X(08) VALUE 'White'. + + PROCEDURE DIVISION. + testme. + DISPLAY scr1 AT 0102 + DISPLAY scr2 AT 0202 + DISPLAY scr3 AT 0303 + MOVE 5 TO LIN + PERFORM dspcol + MOVE "REVERSE," TO + CBLACK (40:), CBLUE (40:), CGREEN (40:), CCYAN (40:), + CRED (40:), CMAGENTA (40:), CYELLOW (40:), CWHITE (40:) + MOVE 6 TO LIN + PERFORM dspcol + * + INSPECT CRED REPLACING ALL "=" BY " " + DISPLAY scr8 AT 0802 + DISPLAY scr9 AT 0903 + MOVE "HIGHLIGHT,NO REVERSE" TO + CBLACK (50:), CBLUE (50:), CGREEN (50:), CCYAN (50:), + CRED (50:), CMAGENTA (50:), CYELLOW (50:), CWHITE (50:) + MOVE 11 TO LIN + PERFORM dspcol + MOVE "NO HIGH, BLINK" TO + CBLACK (60:), CBLUE (60:), CGREEN (60:), CCYAN (60:), + CRED (60:), CMAGENTA (60:), CYELLOW (60:), CWHITE (60:) + MOVE 12 TO LIN + PERFORM dspcol + * + ACCEPT success-flag AT 1401 UPDATE REQUIRED + + IF success AND COB-CRT-STATUS = 0 + GOBACK RETURNING 0 + ELSE + GOBACK RETURNING 1. + + dspcol. + DISPLAY scrblack LINE LIN COL 1, CONTROL CBLACK. + DISPLAY scrblue LINE LIN COL 11, CONTROL CBLUE. + DISPLAY scrgreen LINE LIN COL 21, CONTROL CGREEN. + DISPLAY scrcyan LINE LIN COL 31, CONTROL CCYAN. + DISPLAY scrred LINE LIN COL 41, CONTROL CRED. + DISPLAY scrmaggy LINE LIN COL 51, CONTROL CMAGENTA. + DISPLAY scryell LINE LIN COL 61, CONTROL CYELLOW. + DISPLAY scrwhite LINE LIN COL 77, CONTROL CWHITE. +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], [ignore]) +MANUAL_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CLEANUP + + AT_SETUP([BEEP]) AT_KEYWORDS([BELL FLASH]) @@ -1845,6 +2253,357 @@ MANUAL_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) AT_CLEANUP +AT_SETUP([SPECIAL-NAMES CURSOR phrase 6-digit with field]) +AT_KEYWORDS([position ACCEPT]) + +AT_SKIP_IF([test "$COB_HAS_CURSES" != "yes"]) + +AT_DATA([prog.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. prog. + ENVIRONMENT DIVISION. + CONFIGURATION SECTION. + SPECIAL-NAMES. + CURSOR IS cur-pos. + DATA DIVISION. + WORKING-STORAGE SECTION. + 77 cur-pos pic 9(06). + 01 success-flag PIC X VALUE 'Y'. + 88 success VALUE 'Y', 'y'. + 01 ws-x-20 PIC X(20). + PROCEDURE DIVISION. + testme. + set environment 'COB_SCREEN_EXCEPTIONS' to 'TRUE' + set environment 'COB_SCREEN_ESC' to 'TRUE' + + DISPLAY "If the cursor below is positioned at the 'C'" + LINE 1 COLUMN 1. + DISPLAY "(third column) below, then position it at the" + LINE 2 COLUMN 1. + DISPLAY "'E' (fifth column) and press ENTER." + LINE 3 COLUMN 1. + + MOVE "ABCDEFG " TO WS-X-20. + MOVE 005003 TO cur-pos. + ACCEPT WS-X-20 + LINE 5 COLUMN 1 + WITH + AUTO-SKIP + SIZE 10 + UPDATE. + + IF cur-pos = 005005 AND COB-CRT-STATUS = 0 + GOBACK RETURNING 0 + ELSE + GOBACK RETURNING 1 + END-IF + . +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +MANUAL_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CLEANUP + + +AT_SETUP([SPECIAL-NAMES CURSOR phrase 4-digit with field]) +AT_KEYWORDS([position ACCEPT]) + +AT_SKIP_IF([test "$COB_HAS_CURSES" != "yes"]) + +AT_DATA([prog.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. prog. + ENVIRONMENT DIVISION. + CONFIGURATION SECTION. + SPECIAL-NAMES. + CURSOR IS cur-pos. + DATA DIVISION. + WORKING-STORAGE SECTION. + 77 cur-pos pic 9(04). + 01 success-flag PIC X VALUE 'Y'. + 88 success VALUE 'Y', 'y'. + 01 ws-x-20 PIC X(20). + PROCEDURE DIVISION. + testme. + set environment 'COB_SCREEN_EXCEPTIONS' to 'TRUE' + set environment 'COB_SCREEN_ESC' to 'TRUE' + + DISPLAY "If the cursor below is positioned at the 'C'" + LINE 1 COLUMN 1. + DISPLAY "(third column) below, then position it at the" + LINE 2 COLUMN 1. + DISPLAY "'E' (fifth column) and press ENTER." + LINE 3 COLUMN 1. + + MOVE "ABCDEFG " TO WS-X-20. + MOVE 0503 TO cur-pos. + ACCEPT WS-X-20 + LINE 5 COLUMN 1 + WITH + AUTO-SKIP + SIZE 10 + UPDATE. + + IF cur-pos = 0505 AND COB-CRT-STATUS = 0 + GOBACK RETURNING 0 + ELSE + GOBACK RETURNING 1 + END-IF + . +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +MANUAL_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CLEANUP + + +AT_SETUP([ACCEPT field WITH CURSOR data-item]) +AT_KEYWORDS([position]) + +AT_SKIP_IF([test "$COB_HAS_CURSES" != "yes"]) + +AT_DATA([prog.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. prog. + DATA DIVISION. + WORKING-STORAGE SECTION. + 77 cur-pos pic 9(04). + 01 success-flag PIC X VALUE 'Y'. + 88 success VALUE 'Y', 'y'. + 01 ws-x-20 PIC X(20). + PROCEDURE DIVISION. + testme. + set environment 'COB_SCREEN_EXCEPTIONS' to 'TRUE' + set environment 'COB_SCREEN_ESC' to 'TRUE' + + DISPLAY "If the cursor below is positioned at the 'C'" + LINE 1 COLUMN 1. + DISPLAY "(third column in field) below, then position it at" + LINE 2 COLUMN 1. + DISPLAY "the 'E' (fifth column) and press ENTER." + LINE 3 COLUMN 1. + + MOVE "ABCDEFG " TO WS-X-20. + MOVE 0003 TO cur-pos. + ACCEPT WS-X-20 + LINE 5 COLUMN 3 + WITH + AUTO-SKIP + SIZE 10 + CURSOR cur-pos + UPDATE. + + IF cur-pos = 0005 AND COB-CRT-STATUS = 0 + GOBACK RETURNING 0 + ELSE + GOBACK RETURNING 1 + END-IF + . +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +MANUAL_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CLEANUP + + +AT_SETUP([ACCEPT field WITH CURSOR size overflow]) +AT_KEYWORDS([position]) + +AT_SKIP_IF([test "$COB_HAS_CURSES" != "yes"]) + +AT_DATA([prog.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. prog. + DATA DIVISION. + WORKING-STORAGE SECTION. + 77 cur-pos pic 9(04). + 01 success-flag PIC X VALUE 'Y'. + 88 success VALUE 'Y', 'y'. + 01 ws-x-20 PIC X(10). + PROCEDURE DIVISION. + testme. + set environment 'COB_SCREEN_EXCEPTIONS' to 'TRUE' + set environment 'COB_SCREEN_ESC' to 'TRUE' + + DISPLAY "If the cursor below is positioned at the last" + LINE 1 COLUMN 1. + DISPLAY "column in the field below, then position it at" + LINE 2 COLUMN 1. + DISPLAY "the 'C' (third column) and press ENTER." + LINE 3 COLUMN 1. + + MOVE "ABCDEFGHIJ" TO WS-X-20. + MOVE 0012 TO cur-pos. + ACCEPT WS-X-20 + LINE 5 COLUMN 3 + WITH + AUTO-SKIP + SIZE 10 + CURSOR cur-pos + UPDATE. + + IF cur-pos = 0003 AND COB-CRT-STATUS = 0 + GOBACK RETURNING 0 + ELSE + GOBACK RETURNING 1 + END-IF + . +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +MANUAL_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CLEANUP + + +AT_SETUP([ACCEPT field WITH CURSOR data overflow I]) +AT_KEYWORDS([position]) + +AT_SKIP_IF([test "$COB_HAS_CURSES" != "yes"]) + +AT_DATA([prog.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. prog. + DATA DIVISION. + WORKING-STORAGE SECTION. + 77 cur-pos pic 9(04). + 01 success-flag PIC X VALUE 'Y'. + 88 success VALUE 'Y', 'y'. + 01 ws-x-20 PIC X(20). + PROCEDURE DIVISION. + testme. + set environment 'COB_SCREEN_EXCEPTIONS' to 'TRUE' + set environment 'COB_SCREEN_ESC' to 'TRUE' + + DISPLAY "If the cursor below is positioned at the 'E'" + LINE 1 COLUMN 1. + DISPLAY "(fifth column in field) below, then position it at" + LINE 2 COLUMN 1. + DISPLAY "the 'C' (third column) and press ENTER." + LINE 3 COLUMN 1. + + MOVE "ABCDE " TO WS-X-20. + MOVE 0008 TO cur-pos. + ACCEPT WS-X-20 + LINE 5 COLUMN 3 + WITH + AUTO-SKIP + SIZE 10 + CURSOR cur-pos + UPDATE. + + IF cur-pos = 0003 AND COB-CRT-STATUS = 0 + GOBACK RETURNING 0 + ELSE + GOBACK RETURNING 1 + END-IF + . +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +MANUAL_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CLEANUP + + +AT_SETUP([ACCEPT field WITH CURSOR data overflow II]) +AT_KEYWORDS([position UNDERLINE]) + +AT_SKIP_IF([test "$COB_HAS_CURSES" != "yes"]) + +AT_DATA([prog.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. prog. + DATA DIVISION. + WORKING-STORAGE SECTION. + 77 cur-pos pic 9(04). + 01 success-flag PIC X VALUE 'Y'. + 88 success VALUE 'Y', 'y'. + 01 ws-x-20 PIC X(20). + PROCEDURE DIVISION. + testme. + set environment 'COB_SCREEN_EXCEPTIONS' to 'TRUE' + set environment 'COB_SCREEN_ESC' to 'TRUE' + + DISPLAY "If the cursor below is positioned at the first" + LINE 1 COLUMN 1. + DISPLAY "column in the field below and it is empty, then" + LINE 2 COLUMN 1. + DISPLAY "enter 'AB', position after the 'B' and press ENTER." + LINE 3 COLUMN 1. + + MOVE "ABCDE " TO WS-X-20. + MOVE 0008 TO cur-pos. + ACCEPT WS-X-20 + LINE 5 COLUMN 3 + WITH + SIZE 10 + UNDERLINE + CURSOR cur-pos. + + IF cur-pos = 0003 AND COB-CRT-STATUS = 0 + GOBACK RETURNING 0 + ELSE + GOBACK RETURNING 1 + END-IF + . +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +MANUAL_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CLEANUP + + +AT_SETUP([ACCEPT field WITH CURSOR literal]) +AT_KEYWORDS([position]) + +AT_SKIP_IF([test "$COB_HAS_CURSES" != "yes"]) + +AT_DATA([prog.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. prog. + DATA DIVISION. + WORKING-STORAGE SECTION. + 01 success-flag PIC X VALUE 'Y'. + 88 success VALUE 'Y', 'y'. + 01 ws-x-20 PIC X(20). + PROCEDURE DIVISION. + testme. + set environment 'COB_SCREEN_EXCEPTIONS' to 'TRUE' + set environment 'COB_SCREEN_ESC' to 'TRUE' + + DISPLAY "If the cursor below is positioned at the 'C'" + LINE 1 COLUMN 1. + DISPLAY "(third column in field) below, then press ENTER." + LINE 2 COLUMN 1. + + MOVE "ABCDEFG " TO WS-X-20. + ACCEPT WS-X-20 + LINE 4 COLUMN 2 + WITH + AUTO-SKIP + SIZE 10 + CURSOR 3 + UPDATE. + + IF COB-CRT-STATUS = 0 + GOBACK RETURNING 0 + ELSE + GOBACK RETURNING 1 + END-IF + . +]) + +AT_CHECK([$COMPILE prog.cob], [0], [], []) +MANUAL_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +AT_CLEANUP + + AT_SETUP([HOME key]) AT_KEYWORDS([HOME SIZE]) @@ -1989,15 +2748,20 @@ AT_CLEANUP AT_SETUP([BACKSPACE key]) -AT_KEYWORDS([BACKSPACE SIZE]) +AT_KEYWORDS([BACKSPACE SIZE CURSOR]) AT_SKIP_IF([test "$COB_HAS_CURSES" != "yes"]) AT_DATA([prog.cob], [ IDENTIFICATION DIVISION. PROGRAM-ID. prog. + ENVIRONMENT DIVISION. + CONFIGURATION SECTION. + SPECIAL-NAMES. + CURSOR IS cur-pos. DATA DIVISION. WORKING-STORAGE SECTION. + 77 cur-pos pic 9(06). 01 success-flag PIC X VALUE 'Y'. 88 success VALUE 'Y', 'y'. 01 ws-x-20 PIC X(20). @@ -2012,6 +2776,7 @@ AT_DATA([prog.cob], [ LINE 4 COLUMN 1. MOVE "ABCD " TO WS-X-20. + MOVE 006002 TO cur-pos. ACCEPT WS-X-20 LINE 6 COLUMN 1 WITH diff --git a/tests/testsuite.src/run_misc.at b/tests/testsuite.src/run_misc.at index fdfdc3ea9..d67c930cf 100644 --- a/tests/testsuite.src/run_misc.at +++ b/tests/testsuite.src/run_misc.at @@ -1,4 +1,4 @@ -## Copyright (C) 2003-2012, 2014-2022 Free Software Foundation, Inc. +## Copyright (C) 2003-2012, 2014-2023 Free Software Foundation, Inc. ## Written by Keisuke Nishida, Roger While, Simon Sobisch, Edward Hart, ## Ron Norman ## @@ -345,6 +345,90 @@ AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [abc000], []) AT_CLEANUP +AT_SETUP([LOCAL-STORAGE (3)]) +AT_KEYWORDS([runmisc OCCURS INDEX INDEXED]) + +# 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 + +AT_DATA([callee.cob], [ + 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. +]) + +AT_DATA([caller.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. caller. + PROCEDURE DIVISION. + CALL "callee". + CALL "callee". + CALL "callee". + STOP RUN. +]) + +AT_CHECK([$COMPILE_MODULE callee.cob], [0], [], []) +AT_CHECK([$COMPILE -o prog caller.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [ 1212 2312 3412], []) +AT_CHECK([$COMPILE_MODULE -fdefaultbyte=0 callee.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [ 1111 2211 3311], []) + +# 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], []) + +AT_DATA([callee.cob], [ + 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. +]) + + +AT_CHECK([$COMPILE_MODULE -std=acu-strict callee.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [ 19 20 31], []) +# note: tested result with 2 byte: AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [ 15 26 37], []) + +AT_CLEANUP + + AT_SETUP([EXTERNAL data item]) AT_KEYWORDS([runmisc]) @@ -964,10 +1048,8 @@ AT_DATA([prog.cob], [ 01 X PIC X(6) VALUE "123 ". PROCEDURE DIVISION. IF X(1:3) NUMERIC - STOP RUN - END-IF. - DISPLAY "NG" NO ADVANCING - END-DISPLAY. + STOP RUN. + DISPLAY "NG" NO ADVANCING. STOP RUN. ]) @@ -989,9 +1071,7 @@ AT_DATA([prog.cob], [ 02 X PIC X OCCURS 1 INDEXED BY I. PROCEDURE DIVISION. IF I < (I + 2) - DISPLAY "OK" NO ADVANCING - END-DISPLAY - END-IF. + DISPLAY "OK" NO ADVANCING. STOP RUN. ]) @@ -1040,17 +1120,12 @@ AT_DATA([prog.cob], [ PROCEDURE DIVISION. MOVE x"0000" TO X (2:2) IF X-NUM NUMERIC - DISPLAY "low-value is numeric" UPON SYSERR - END-DISPLAY - END-IF + DISPLAY "low-value is numeric" UPON SYSERR. MOVE x"01" TO X (3:1) IF X-NUM NUMERIC - DISPLAY "SOH is numeric" UPON SYSERR - END-DISPLAY - END-IF + DISPLAY "SOH is numeric" UPON SYSERR. MOVE X-NUM TO NUM DISPLAY "test over" - END-DISPLAY * GOBACK. ]) @@ -1066,12 +1141,9 @@ AT_DATA([prog2.cob], [ PROCEDURE DIVISION. MOVE x"0A" TO X (2:1) IF X-NUM NUMERIC - DISPLAY "bad prog" - END-DISPLAY - END-IF + DISPLAY "bad prog". MOVE X-NUM TO NUM DISPLAY "test over" - END-DISPLAY * GOBACK. ]) @@ -1082,7 +1154,7 @@ AT_CHECK([$COBCRUN_DIRECT ./unchecked_prog], [0], [test over ], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [1], [], -[libcob: prog.cob:20: error: 'X-NUM' (Type: NUMERIC DISPLAY) not numeric: '0\000\001123' +[libcob: prog.cob:16: error: 'X-NUM' (Type: NUMERIC DISPLAY) not numeric: '0\000\001123' ]) AT_CHECK([$COMPILE prog2.cob], [0], [], []) @@ -1091,8 +1163,8 @@ AT_CHECK([$COBCRUN_DIRECT ./unchecked_prog2], [0], [test over ], []) AT_CHECK([$COBCRUN_DIRECT ./prog2], [1], [], -[libcob: prog2.cob:15: error: 'X-NUM' (Type: PACKED-DECIMAL) not numeric: '0x000a123f' -]) +[[libcob: prog2.cob:13: error: 'X-NUM' (Type: PACKED-DECIMAL (unsigned)) not numeric: '0x000a123f' +]]) AT_CLEANUP @@ -3370,7 +3442,7 @@ AT_DATA([prog.cob], [ STOP RUN. ]) -AT_CHECK([$COMPILE -std=default prog.cob ], [0], [], []) +AT_CHECK([$COMPILE -std=default -Wno-truncate prog.cob ], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [TST5-2 :096, Length: 1 TST5-3 :04096, Length: 2 @@ -5601,9 +5673,11 @@ AT_DATA([prog.cob], [ 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. @@ -6014,6 +6088,12 @@ AT_DATA([prog.cob], [ AT_CHECK([$COMPILE prog.cob], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) +AT_CHECK([$COMPILE -fno-fast-compare prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +#AT_CHECK([$COMPILE -fno-fast-math prog.cob], [0], [], []) +#AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + AT_CHECK([$COMPILE -fnotrunc prog.cob], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) @@ -6497,6 +6577,12 @@ AT_DATA([prog.cob], [ AT_CHECK([$COMPILE prog.cob], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) +AT_CHECK([$COMPILE -fno-fast-compare prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +#AT_CHECK([$COMPILE -fno-fast-math prog.cob], [0], [], []) +#AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + AT_CHECK([$COMPILE -fnotrunc prog.cob], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) @@ -8845,6 +8931,10 @@ AT_DATA([prog.cob], [ 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 @@ -8861,7 +8951,7 @@ $COBCRUN_DIRECT ./prog "param 1" param 'param 3'], [1], GRP-3:***ABC00D99D99D99D99XXABC00D99D99D99D99XXABC00D99 00D99D99XX*** GRP-5:***Mon49eyMon49eyMon49eyMon49eyMon49eyMon49eyMon49ey ], -[libcob: prog.cob:102: error: BASED/LINKAGE item 'A-TABLE' has NULL address +[libcob: prog.cob:106: error: BASED/LINKAGE item 'A-TABLE' has NULL address dump written to dumpall.txt ]) @@ -8871,7 +8961,7 @@ AT_CAPTURE_FILE([dumpall.txt]) AT_DATA([reference], [ Module dump due to BASED/LINKAGE item 'A-TABLE' has NULL address - Last statement of "prog" was MOVE at line 102 of prog.cob + Last statement of "prog" was MOVE at line 106 of prog.cob ENTRY prog at prog.cob:75 Started by ./prog param 1 @@ -9694,6 +9784,43 @@ AT_CHECK([gcdiff reference dumpall.txt], [0], [], []) AT_CLEANUP +AT_SETUP([PROGRAM-ID / CALL with hyphen and underscore]) +AT_KEYWORDS([runmisc]) + +AT_DATA([prog.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. prog. + + PROCEDURE DIVISION. + MAIN. + CALL "_SUB-PROG_NOW" USING 'X'. + STOP RUN. +]) + +AT_DATA([sub.cob], [ + 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. +]) + +AT_CHECK([$COMPILE_MODULE sub.cob], [0], [], []) +AT_CHECK([$COMPILE prog.cob], [0], [], []) + +AT_CHECK([COB_PRE_LOAD=sub $COBCRUN_DIRECT ./prog], [0], +[SUB GOT X +], []) + +AT_CLEANUP + + AT_SETUP([CALL with directory]) AT_KEYWORDS([runmisc]) @@ -10985,8 +11112,11 @@ AT_DATA([caller.cob], [ 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. @@ -11111,7 +11241,7 @@ AT_CLEANUP AT_SETUP([Numeric MOVE with/without -fbinary-truncate]) -AT_KEYWORDS([runmisc size]) +AT_KEYWORDS([runmisc size binary-truncate]) AT_DATA([prog.cob], [ IDENTIFICATION DIVISION. @@ -11119,7 +11249,7 @@ AT_DATA([prog.cob], [ DATA DIVISION. WORKING-STORAGE SECTION. - 01 x PIC 9(4) COMP. + 01 x PIC 9(4) COMP. PROCEDURE DIVISION. MOVE 30000 TO x @@ -11136,6 +11266,9 @@ AT_DATA([prog.cob], [ . check-x-val SECTION. EVALUATE x + WHEN 30000 + DISPLAY "x IS 30000" + WHEN >= 10000 DISPLAY "x >= 10000" @@ -11149,6 +11282,7 @@ AT_DATA([prog.cob], [ END PROGRAM prog. ]) + AT_CHECK([$COMPILE prog.cob], [0], [], [prog.cob:10: warning: value size exceeds data size prog.cob:10: note: value is 30000 @@ -11162,11 +11296,19 @@ x IS ZERO AT_CHECK([$COMPILE -fno-binary-truncate prog.cob], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [0], -[x >= 10000 -x >= 10000 -x >= 10000 +[x IS 30000 +x IS 30000 +x IS 30000 +]) + +AT_CHECK([$COMPILE -fno-binary-truncate -fno-fast-compare prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], +[x IS 30000 +x IS 30000 +x IS 30000 ]) + AT_CLEANUP @@ -11380,6 +11522,9 @@ AT_DATA([prog.cob], [ 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. @@ -13108,7 +13253,10 @@ AT_DATA([prog.cob], [ STOP RUN. ]) -AT_CHECK([$COMPILE prog.cob -w], [0], [], []) +# 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 +AT_CHECK([$COMPILE prog.cob -fconstant-folding -fremove-unreachable -w], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [A: OK VAR-LEN > 16 AND VAR-LEN < 200 @@ -17346,7 +17494,6 @@ AT_DATA([prog.cob], [ 01 variable usage signed-int value 0. 88 a-one value 1. 88 a-two value 2. - LINKAGE SECTION. PROCEDURE DIVISION. *> bug #702, "pow"-call in generated program display n(n**0+ 1:) with no advancing. @@ -17368,6 +17515,148 @@ AT_CHECK([$COBCRUN_DIRECT ./prog], [0], AT_CLEANUP +AT_SETUP([compare numeric DISPLAY SPACE with ZERO]) +AT_KEYWORDS([runmisc expression]) + +AT_DATA([prog.cob], [ + 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. +]) + +# 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 +AT_CHECK([$COMPILE -Wno-constant-expression -fno-fast-compare prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], []) + +# with "fast compare" enabled, the same PIC+USAGE leads to memcmp, therefore the +# result differs with invalid data; note: the exact "difference" is unportable +AT_CHECK([$COMPILE -Wno-constant-expression prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], +[TST-NUMBER IS NOT 0 +TST-NUMBER IS < 0 +TST-NUMBER IS NOT ZERO-NUMBER +TST-NUMBER IS < ZERO-NUMBER +TST-DECIMAL IS NOT ZERO-DECIMAL +TST-DECIMAL IS < ZERO-DECIMAL +], []) + +# 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? + +AT_CLEANUP + + AT_SETUP([runtime checks within conditions]) AT_KEYWORDS([runmisc condition expression]) @@ -17585,3 +17874,4 @@ note: TooHigh3 has version 4.0.1.2 ], []) AT_CLEANUP + diff --git a/tests/testsuite.src/run_subscripts.at b/tests/testsuite.src/run_subscripts.at index 4c0930748..cd590c923 100644 --- a/tests/testsuite.src/run_subscripts.at +++ b/tests/testsuite.src/run_subscripts.at @@ -542,6 +542,7 @@ AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [Hi, there!]) AT_CLEANUP + AT_SETUP([Check Subscripts]) AT_KEYWORDS([SUBSCRIPT]) @@ -562,15 +563,13 @@ AT_DATA([prog.cob], [ 01 FILLER REDEFINES TBL. 05 MYNAME PIC X(8) OCCURS 4 INDEXED BY IB1. 01 TBL2. - 05 MYMRK PIC X(3) + 05 MYMRK PIC X(3) OCCURS 2 TO 5 DEPENDING ON MAXIDX INDEXED BY IB2. PROCEDURE DIVISION. MOVE 5 TO MAXIDX SET NIDX TO IB1. DISPLAY "Initial value: " NIDX. - SET IB2 TO 0.2. - SET IB2 TO "fred". SET IB2 TO 10. MOVE "A:" TO MYMRK (1) MOVE "B:" TO MYMRK (2) @@ -631,7 +630,7 @@ AT_DATA([prog.cob], [ END-PERFORM. STOP RUN. END PROGRAM prog. - + IDENTIFICATION DIVISION. PROGRAM-ID. SUBN. DATA DIVISION. @@ -642,13 +641,7 @@ AT_DATA([prog.cob], [ END PROGRAM SUBN. ]) -AT_CHECK([$COMPILE -x -std=mf -debug -Wall -debug -O prog.cob ], [0], [], [prog.cob:25: warning: SET TO should be an integer -prog.cob:26: warning: source is non-numeric - substituting zero -prog.cob:27: warning: SET IB2 TO 10 is out of bounds -prog.cob:56: warning: SET IB1 TO -9 is out of bounds -prog.cob:57: warning: SET IB1 TO 300 is out of bounds -]) - +AT_CHECK([$COMPILE -Wno-others prog.cob], [0], [], []) AT_CHECK([$COBCRUN_DIRECT ./prog], [1], [Initial value: +01 Number is +0000000042 Number is +0000000002 @@ -660,7 +653,7 @@ Number is +0000000003 +01: A: Freddy . +02: B: Barney . +03: C: Wilma . -], [libcob: prog.cob:80: error: subscript of 'MYMRK' out of bounds: 4 +], [libcob: prog.cob:78: error: subscript of 'MYMRK' out of bounds: 4 note: current maximum subscript for 'MYMRK': 3 ]) diff --git a/tests/testsuite.src/syn_definition.at b/tests/testsuite.src/syn_definition.at index 2e35f217c..3ac642c9c 100644 --- a/tests/testsuite.src/syn_definition.at +++ b/tests/testsuite.src/syn_definition.at @@ -35,7 +35,9 @@ AT_CLEANUP AT_SETUP([Invalid PROGRAM-ID]) -AT_KEYWORDS([definition]) +AT_KEYWORDS([definition underscore hyphen ENTRY]) + +# note: the name check is identical for the ENTRY statement AT_DATA([SHORT.cob], [ IDENTIFICATION DIVISION. @@ -48,6 +50,39 @@ AT_CHECK([$COMPILE_ONLY SHORT.cob], [1], [], [SHORT.cob:3: error: invalid PROGRAM-ID 'short' - name duplicates a 'C' keyword ]) +AT_DATA([SHORT2.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. "_short". + PROCEDURE DIVISION. + STOP RUN. +]) + +AT_CHECK([$COMPILE_ONLY SHORT2.cob], [0], [], []) + + +AT_DATA([SHORT3.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. _short. + PROCEDURE DIVISION. + STOP RUN. +]) + +AT_CHECK([$COMPILE_ONLY SHORT3.cob], [1], [], +[SHORT3.cob:3: error: invalid symbol '_' - skipping word +SHORT3.cob:4: error: syntax error, unexpected DIVISION +]) + +AT_DATA([SHORT4.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. "-short". + PROCEDURE DIVISION. + STOP RUN. +]) + +AT_CHECK([$COMPILE_ONLY SHORT4.cob], [1], [], +[SHORT4.cob:3: error: invalid PROGRAM-ID '-short' - name cannot begin with space or hyphen +]) + AT_CLEANUP @@ -423,7 +458,7 @@ AT_CLEANUP AT_SETUP([Redefinition of 02 items]) -AT_KEYWORDS([definition]) +AT_KEYWORDS([definition redefines]) AT_DATA([prog.cob], [ IDENTIFICATION DIVISION. @@ -435,9 +470,21 @@ AT_DATA([prog.cob], [ 02 X PIC X. ]) -AT_CHECK([$COMPILE_ONLY prog.cob], [0], [], -[prog.cob:8: warning: redefinition of 'X' -prog.cob:7: note: 'X' previously defined here +# validation for #881 - error if redefinition on redefines +AT_DATA([prog2.cob], [ + 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. +]) + +AT_CHECK([$COMPILE_ONLY prog2.cob], [0], [], +[prog2.cob:8: warning: redefinition of 'X' +prog2.cob:7: note: 'X' previously defined here ]) AT_CLEANUP diff --git a/tests/testsuite.src/syn_functions.at b/tests/testsuite.src/syn_functions.at index a2507cc37..53735c571 100644 --- a/tests/testsuite.src/syn_functions.at +++ b/tests/testsuite.src/syn_functions.at @@ -1,4 +1,4 @@ -## Copyright (C) 2007-2012, 2014-2018, 2020-2022 Free Software Foundation, Inc. +## Copyright (C) 2007-2012, 2014-2018, 2020-2023 Free Software Foundation, Inc. ## Written by Roger While, Simon Sobisch, Edward Hart ## ## This file is part of GnuCOBOL. @@ -522,24 +522,20 @@ AT_DATA([prog.cob], [ SPECIAL-NAMES. DECIMAL-POINT IS COMMA. PROCEDURE DIVISION. - DISPLAY FUNCTION FORMATTED-TIME ("hhmmss,ss", 1) - END-DISPLAY + DISPLAY FUNCTION FORMATTED-TIME ("hhmmss,ss", 1). DISPLAY FUNCTION FORMATTED-DATETIME - ("YYYYMMDDThhmmss,ss", 1, 1) - END-DISPLAY + ("YYYYMMDDThhmmss,ss", 1, 1). - DISPLAY FUNCTION FORMATTED-TIME ("hhmmss.ss", 1) - END-DISPLAY + DISPLAY FUNCTION FORMATTED-TIME ("hhmmss.ss", 1). DISPLAY FUNCTION FORMATTED-DATETIME - ("YYYYMMDDThhmmss.ss", 1, 1) - END-DISPLAY + ("YYYYMMDDThhmmss.ss", 1, 1). STOP RUN. ]) AT_CHECK([$COMPILE_ONLY prog.cob], [1], [], -[prog.cob:15: error: FUNCTION 'FORMATTED-TIME' has invalid date/time format -prog.cob:17: error: FUNCTION 'FORMATTED-DATETIME' has invalid date/time format +[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_CLEANUP @@ -577,26 +573,19 @@ AT_DATA([prog.cob], [ PROGRAM-ID. prog. PROCEDURE DIVISION. DISPLAY FUNCTION LENGTH ("abcd" & "xyz") - END-DISPLAY DISPLAY FUNCTION BYTE-LENGTH ("abcd" & "xyz") - END-DISPLAY DISPLAY FUNCTION LENGTH ("abcd" "xyz") - END-DISPLAY DISPLAY FUNCTION BYTE-LENGTH (01234) - END-DISPLAY DISPLAY FUNCTION LENGTH (567) - END-DISPLAY DISPLAY FUNCTION LENGTH ("abcd" & "xyz" PHYSICAL) - END-DISPLAY DISPLAY FUNCTION BYTE-LENGTH ("abcd" & "xyz" PHYSICAL) - END-DISPLAY . ]) AT_CHECK([$COMPILE -Wno-pending prog.cob], [1], [], -[prog.cob:9: error: syntax error, unexpected Literal, expecting PHYSICAL or ) -prog.cob:11: error: a non-numeric literal is expected here -prog.cob:13: error: a non-numeric literal is expected here +[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_CLEANUP diff --git a/tests/testsuite.src/syn_literals.at b/tests/testsuite.src/syn_literals.at index 4664678b8..cc9914be7 100644 --- a/tests/testsuite.src/syn_literals.at +++ b/tests/testsuite.src/syn_literals.at @@ -786,30 +786,30 @@ AT_DATA([prog2.cob], [ AT_CHECK([$COMPILE_ONLY prog.cob], [1], [], [prog.cob:9: error: invalid literal: ' ...' -prog.cob:9: error: literal length exceeds 8191 characters +prog.cob:9: note: literal length exceeds 8191 characters ]) AT_CHECK([$COMPILE_ONLY -fliteral-length=160 prog.cob], [1], [], [prog.cob:9: error: invalid literal: ' ...' -prog.cob:9: error: literal length exceeds 160 characters +prog.cob:9: note: literal length exceeds 160 characters ]) AT_CHECK([$COMPILE_ONLY -free prog2.cob], [1], [], [prog2.cob:43: error: invalid literal: ' ...' -prog2.cob:43: error: literal length 8299 exceeds 8191 characters +prog2.cob:43: note: literal length 8299 exceeds 8191 characters ]) # extra test with listing as this is an edge case there AT_CAPTURE_FILE([prog.lst]) AT_CHECK([$COMPILE_ONLY -t prog.lst prog.cob], [1], [], [prog.cob:9: error: invalid literal: ' ...' -prog.cob:9: error: literal length exceeds 8191 characters +prog.cob:9: note: literal length exceeds 8191 characters ]) AT_CAPTURE_FILE([prog2.lst]) AT_CHECK([$COMPILE_ONLY -free -t prog2.lst prog2.cob], [1], [], [prog2.cob:43: error: invalid literal: ' ...' -prog2.cob:43: error: literal length 8299 exceeds 8191 characters +prog2.cob:43: note: literal length 8299 exceeds 8191 characters ]) AT_CLEANUP @@ -1062,20 +1062,20 @@ AT_CHECK([$COMPILE_ONLY prog.cob], [1], [], 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: error: exponent has decimal point +prog.cob:14: note: exponent has decimal point prog.cob:15: error: invalid floating-point literal: '-0.0E-0' -prog.cob:15: error: significand of 0 must be positive -prog.cob:15: error: exponent of 0 must be positive +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: error: exponent has more than 4 digits +prog.cob:16: note: exponent has more than 4 digits prog.cob:17: error: invalid floating-point literal: '.123456789012345678901234567890123 ...' -prog.cob:17: error: significand has more than 36 digits +prog.cob:17: note: significand has more than 36 digits prog.cob:19: error: invalid floating-point literal: '0.0E3' -prog.cob:19: error: exponent of 0 must be 0 +prog.cob:19: note: exponent of 0 must be 0 prog.cob:22: error: invalid floating-point literal: '1.0E6145' -prog.cob:22: error: exponent not between -6143 and 6144 +prog.cob:22: note: exponent not between -6143 and 6144 prog.cob:23: error: invalid floating-point literal: '1.0E-6144' -prog.cob:23: error: exponent not between -6143 and 6144 +prog.cob:23: note: exponent not between -6143 and 6144 ]) AT_CHECK([$COMPILE_ONLY prog2.cob], [1], [], @@ -1083,20 +1083,20 @@ AT_CHECK([$COMPILE_ONLY prog2.cob], [1], [], 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: error: exponent has decimal point +prog2.cob:18: note: exponent has decimal point prog2.cob:19: error: invalid floating-point literal: '-0,0E-0' -prog2.cob:19: error: significand of 0 must be positive -prog2.cob:19: error: exponent of 0 must be positive +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: error: exponent has more than 4 digits +prog2.cob:20: note: exponent has more than 4 digits prog2.cob:21: error: invalid floating-point literal: ',123456789012345678901234567890123 ...' -prog2.cob:21: error: significand has more than 36 digits +prog2.cob:21: note: significand has more than 36 digits prog2.cob:23: error: invalid floating-point literal: '0,0E3' -prog2.cob:23: error: exponent of 0 must be 0 +prog2.cob:23: note: exponent of 0 must be 0 prog2.cob:26: error: invalid floating-point literal: '1,0E6145' -prog2.cob:26: error: exponent not between -6143 and 6144 +prog2.cob:26: note: exponent not between -6143 and 6144 prog2.cob:27: error: invalid floating-point literal: '1,0E-6144' -prog2.cob:27: error: exponent not between -6143 and 6144 +prog2.cob:27: note: exponent not between -6143 and 6144 ]) AT_CLEANUP @@ -1120,10 +1120,18 @@ AT_DATA([prog.cob], [ AT_CHECK([$COMPILE_ONLY prog.cob], [1], [], [prog.cob:9: error: invalid X literal: 'GH' -prog.cob:9: error: literal contains invalid character 'G' -prog.cob:9: error: literal contains invalid character 'H' +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: error: literal does not have an even number of digits +prog.cob:10: note: literal does not have an even number of digits +]) + +AT_CHECK([$COMPILE_ONLY -std=mf-strict prog.cob], [1], [], +[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_CLEANUP @@ -1188,11 +1196,11 @@ AT_CHECK([$COMPILE_ONLY prog.cob], [1], [], 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: error: literal contains invalid character 'G' -prog.cob:10: error: literal contains invalid character 'H' +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: error: literal does not have an even number of digits +prog.cob:11: note: literal does not have an even number of digits ]) AT_CHECK([$COMPILE_ONLY -std=cobol85 prog.cob], [1], [], @@ -1225,10 +1233,10 @@ AT_DATA([prog.cob], [ AT_CHECK([$COMPILE_ONLY -std=mf prog.cob], [1], [], [prog.cob:9: error: invalid B literal: '23' -prog.cob:9: error: literal contains invalid character '2' -prog.cob:9: error: literal contains invalid character '3' +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: error: literal length 152 exceeds 64 characters +prog.cob:10: note: literal length 152 exceeds 64 characters ]) AT_CHECK([$COMPILE_ONLY -std=cobol85 prog.cob], [1], [], @@ -1258,7 +1266,7 @@ AT_DATA([prog.cob], [ AT_CHECK([$COMPILE_ONLY prog.cob], [1], [], [prog.cob:6: error: invalid BX literal: '0123456789ABCDEF0123456789ABCDEF01 ...' -prog.cob:6: error: literal length 192 exceeds 64 characters +prog.cob:6: note: literal length 192 exceeds 64 characters ]) AT_CHECK([$COMPILE_ONLY -std=cobol85 prog.cob], [1], [], @@ -1289,10 +1297,10 @@ AT_DATA([prog.cob], [ AT_CHECK([$COMPILE_ONLY -Wno-unfinished -fhp-octal-literals=ok prog.cob], [1], [], [prog.cob:9: error: invalid % literal: '11111111111111111111111' -prog.cob:9: error: literal length 23 exceeds 22 characters +prog.cob:9: note: literal length 23 exceeds 22 characters prog.cob:10: error: invalid % literal: '89' -prog.cob:10: error: literal contains invalid character '8' -prog.cob:10: error: literal contains invalid character '9' +prog.cob:10: note: literal contains invalid character '8' +prog.cob:10: note: literal contains invalid character '9' ]) AT_CHECK([$COMPILE_ONLY -std=cobol2014 prog.cob], [1], [], @@ -1329,25 +1337,25 @@ AT_DATA([prog.cob], [ AT_CHECK([$COMPILE_ONLY -std=acu prog.cob], [1], [], [prog.cob:11: error: invalid B# literal: '1111111111111111111111111111111111 ...' -prog.cob:11: error: literal length 65 exceeds 64 characters +prog.cob:11: note: literal length 65 exceeds 64 characters prog.cob:12: error: invalid O# literal: '11111111111111111111111' -prog.cob:12: error: literal length 23 exceeds 22 characters +prog.cob:12: note: literal length 23 exceeds 22 characters prog.cob:12: error: invalid hexadecimal literal: '11111111111111111' -prog.cob:12: error: literal length 17 exceeds 16 characters +prog.cob:12: note: literal length 17 exceeds 16 characters prog.cob:12: error: invalid hexadecimal literal: '22222222222222222' -prog.cob:12: error: literal length 17 exceeds 16 characters +prog.cob:12: note: literal length 17 exceeds 16 characters prog.cob:14: error: invalid B# literal: '23' -prog.cob:14: error: literal contains invalid character '2' -prog.cob:14: error: literal contains invalid character '3' +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: error: literal contains invalid character '8' -prog.cob:14: error: literal contains invalid character '9' +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: error: literal contains invalid character 'G' -prog.cob:14: error: literal contains invalid character 'G' +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: error: literal contains invalid character 'H' -prog.cob:14: error: literal contains invalid character 'H' +prog.cob:14: note: literal contains invalid character 'H' +prog.cob:14: note: literal contains invalid character 'H' ]) AT_CHECK([$COMPILE_ONLY -std=cobol2014 prog.cob], [1], [], @@ -1392,11 +1400,11 @@ AT_DATA([prog.cob], [ # TODO check the result according to COB_32_BIT_LONG --> 1 should result in the following AT_CHECK([$COMPILE_ONLY -std=acu prog.cob], [1], [], [prog.cob:7: error: invalid B# literal: '11111111111111111111111111111111111...' -prog.cob:7: error: literal exceeds limit 4294967295 +prog.cob:7: note: literal exceeds limit 4294967295 prog.cob:8: error: invalid O# literal: '1111111111111111111111' -prog.cob:8: error: literal exceeds limit 4294967295 +prog.cob:8: note: literal exceeds limit 4294967295 prog.cob:8: error: invalid X# literal: '1111111111111111' -prog.cob:8: error: literal exceeds limit 4294967295 +prog.cob:8: note: literal exceeds limit 4294967295 ]) AT_CLEANUP @@ -1426,36 +1434,35 @@ AT_DATA([prog.cob], [ . ]) -AT_CHECK([$COMPILE_ONLY prog.cob], [1], [], -[prog.cob:8: warning: handling of USAGE NATIONAL is unfinished; implementation is likely to be changed -prog.cob:12: warning: hexadecimal literal has zero length; X'00' will be assumed -prog.cob:13: error: H literals must contain at least one character +# unfinished national +AT_CHECK([$COMPILE_ONLY -Wno-unfinished prog.cob], [1], [], +[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: error: Z literals must contain at least one character +prog.cob:14: note: Z literals must contain at least one character prog.cob:15: error: invalid L literal: '' -prog.cob:15: error: L literals must contain at least one character +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:16: warning: handling of national literal is unfinished; implementation is likely to be changed 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: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_CHECK([$COMPILE_ONLY -fzero-length-literals=error prog.cob], [1], [], -[prog.cob:8: warning: handling of USAGE NATIONAL is unfinished; implementation is likely to be changed -prog.cob:12: error: zero-length literal used +AT_CHECK([$COMPILE_ONLY -fzero-length-literals=error -Wno-unfinished prog.cob], [1], [], +[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: H literals must contain at least one character +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: error: Z literals must contain at least one character +prog.cob:14: note: Z literals must contain at least one character prog.cob:15: error: invalid L literal: '' -prog.cob:15: error: L literals must contain at least one character +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:16: warning: handling of national literal is unfinished; implementation is likely to be changed 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: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 ]) @@ -1510,7 +1517,7 @@ AT_DATA([prog.cob], [ # [prog.cob:5: error: invalid literal: ' 1 c d e f g h i j k l m n 0 q. ...' AT_CHECK([$COMPILE_ONLY -w prog.cob], [1], [], [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: error: missing terminating ' character +prog.cob:5: note: missing terminating ' character ]) AT_CLEANUP diff --git a/tests/testsuite.src/syn_misc.at b/tests/testsuite.src/syn_misc.at index 0c94ca571..05d2760a3 100644 --- a/tests/testsuite.src/syn_misc.at +++ b/tests/testsuite.src/syn_misc.at @@ -1,4 +1,4 @@ -## Copyright (C) 2007-2012, 2014-2022 Free Software Foundation, Inc. +## Copyright (C) 2007-2012, 2014-2023 Free Software Foundation, Inc. ## Written by Keisuke Nishida, Roger While, Simon Sobisch, Edward Hart, ## Ron Norman ## @@ -282,7 +282,9 @@ AT_DATA([prog.cob], [ 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. ]) @@ -2480,11 +2482,10 @@ AT_CHECK([$COMPILE_ONLY -std=rm-strict prog.cob], [1], [], [prog.cob:12: error: syntax error, unexpected Identifier 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: syntax error, unexpected Identifier -prog.cob:20: error: 'handle' is not defined, but is a reserved word in another dialect -prog.cob:21: error: syntax error, unexpected Identifier -prog.cob:15: error: PICTURE clause required for 'unused-thread' +prog.cob:17: error: syntax error, unexpected Identifier +prog.cob:19: error: 'handle' is not defined, but is a reserved word in another dialect +prog.cob:20: error: syntax error, unexpected Identifier +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 @@ -2651,12 +2652,11 @@ AT_DATA([prog.cob], [ AT_CHECK([$COMPILE_ONLY -std=acu-strict prog.cob], [0], [], [prog.cob:16: warning: GRAPHICAL CONTROL is not implemented -prog.cob:21: warning: COLOR clause 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:42: warning: COLOR is not implemented prog.cob:53: warning: GRAPHICAL WINDOW is not implemented ]) @@ -4882,9 +4882,9 @@ prog.cob:9: error: '/' operator misplaced AT_CHECK([$COMPILE_ONLY -std=mf-strict prog.cob], [1], [], [prog.cob:6: error: syntax error, unexpected Identifier -prog.cob:7: error: 'CONSTANT' is not defined, but is a reserved word in another dialect +prog.cob:7: error: syntax error, unexpected Identifier prog.cob:8: error: syntax error, unexpected Identifier -prog.cob:9: error: 'CONSTANT' is not defined, but is a reserved word in another dialect +prog.cob:9: error: syntax error, unexpected Identifier prog.cob:10: error: syntax error, unexpected Identifier ]) @@ -5711,7 +5711,7 @@ AT_CLEANUP AT_SETUP([SET SOURCEFORMAT syntax checks]) -AT_KEYWORDS([misc extensions directives]) +AT_KEYWORDS([misc extensions source directives]) AT_DATA([prog.cob], [ *> Valid @@ -5733,7 +5733,7 @@ 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: error: missing terminating ' character +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 @@ -6057,7 +6057,7 @@ 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:33: error: an integer, INDEX, or a POINTER is expected here prog.cob:34: error: condition-name not allowed here: 'val-i2' prog.cob:32: error: 'val-i1 (MAIN SECTION:)' is not a procedure name ]) @@ -8135,3 +8135,25 @@ AT_CHECK([$COMPILE_ONLY -fformat=fixed fixed2.cob], [0], [], []) AT_CHECK([$COMPILE_ONLY -fformat=fixed domfixed.cob], [0], [], []) AT_CLEANUP + +AT_SETUP([context sensitive alias]) +AT_KEYWORDS([misc context alias]) + +AT_DATA([prog.cob], [ + 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. +]) + +AT_CHECK([$COMPILE -freserved="XX*=BYTE-LENGTH" prog.cob], [0], [], []) +AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [1]) + +AT_CLEANUP diff --git a/tests/testsuite.src/syn_move.at b/tests/testsuite.src/syn_move.at index 2290fcc9f..02a8ea0be 100644 --- a/tests/testsuite.src/syn_move.at +++ b/tests/testsuite.src/syn_move.at @@ -1,4 +1,5 @@ -## Copyright (C) 2003-2012, 2015-2018, 2020-2021 Free Software Foundation, Inc. +## Copyright (C) 2003-2012, 2015-2018, 2020-2021, 2023 Free Software +## Foundation, Inc. ## Written by Keisuke Nishida, Roger While, Simon Sobisch ## ## This file is part of GnuCOBOL. @@ -98,20 +99,23 @@ AT_DATA([prog.cob], [ 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. ]) -AT_CHECK([$COMPILE_ONLY prog.cob], [1], [], -[prog.cob:16: error: invalid MOVE statement -prog.cob:17: error: invalid MOVE statement +# unfinished national +AT_CHECK([$COMPILE_ONLY -Wno-unfinished prog.cob], [1], [], +[prog.cob:18: error: invalid MOVE statement +prog.cob:19: error: invalid MOVE statement ]) AT_CLEANUP @@ -129,18 +133,21 @@ AT_DATA([prog.cob], [ 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. ]) -AT_CHECK([$COMPILE_ONLY prog.cob], [0], [], []) +# unfinished national +AT_CHECK([$COMPILE_ONLY -Wno-unfinished prog.cob], [0], [], []) AT_CLEANUP @@ -157,20 +164,23 @@ AT_DATA([prog.cob], [ 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. ]) -AT_CHECK([$COMPILE_ONLY prog.cob], [1], [], -[prog.cob:16: error: invalid MOVE statement -prog.cob:17: error: invalid MOVE statement +# unfinished national +AT_CHECK([$COMPILE_ONLY -Wno-unfinished prog.cob], [1], [], +[prog.cob:18: error: invalid MOVE statement +prog.cob:19: error: invalid MOVE statement ]) AT_CLEANUP @@ -188,19 +198,22 @@ AT_DATA([prog.cob], [ 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. ]) -AT_CHECK([$COMPILE_ONLY prog.cob], [1], [], -[prog.cob:13: error: invalid MOVE statement +# unfinished national +AT_CHECK([$COMPILE_ONLY -Wno-unfinished prog.cob], [1], [], +[prog.cob:14: error: invalid MOVE statement ]) AT_CLEANUP @@ -218,21 +231,25 @@ AT_DATA([prog.cob], [ 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. ]) -AT_CHECK([$COMPILE_ONLY prog.cob], [1], [], -[prog.cob:13: error: invalid MOVE statement -prog.cob:14: error: invalid MOVE statement +# unfinished national +AT_CHECK([$COMPILE_ONLY -Wno-unfinished prog.cob], [1], [], +[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_CLEANUP @@ -250,19 +267,100 @@ AT_DATA([prog.cob], [ 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. ]) -AT_CHECK([$COMPILE_ONLY prog.cob], [1], [], -[prog.cob:13: error: invalid MOVE statement +# unfinished national +AT_CHECK([$COMPILE_ONLY -Wno-unfinished prog.cob], [1], [], +[prog.cob:15: error: invalid MOVE statement +]) + +AT_CLEANUP + + +AT_SETUP([MOVE national TO x]) +AT_KEYWORDS([move]) + +AT_DATA([prog.cob], [ + 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. +]) + +# unfinished national +AT_CHECK([$COMPILE_ONLY -Wno-unfinished prog.cob], [1], [], +[prog.cob:15: error: invalid MOVE statement +prog.cob:16: error: invalid MOVE statement +prog.cob:17: error: invalid MOVE statement +]) + +AT_CLEANUP + + +AT_SETUP([MOVE national-edited TO x]) +AT_KEYWORDS([move editing national]) + +AT_DATA([prog.cob], [ + 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. +]) + +# unfinished national +AT_CHECK([$COMPILE_ONLY -Wno-unfinished prog.cob], [1], [], +[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_CLEANUP @@ -594,8 +692,8 @@ 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:19: error: an integer, INDEX, or a POINTER is expected here +prog.cob:20: error: an integer, INDEX, or a POINTER is expected here 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 @@ -612,8 +710,8 @@ 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:19: error: an integer, INDEX, or a POINTER is expected here +prog.cob:20: error: an integer, INDEX, or a POINTER is expected here 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 @@ -628,8 +726,8 @@ 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:19: error: an integer, INDEX, or a POINTER is expected here +prog.cob:20: error: an integer, INDEX, or a POINTER is expected here 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 @@ -646,8 +744,8 @@ 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:19: error: an integer, INDEX, or a POINTER is expected here +prog.cob:20: error: an integer, INDEX, or a POINTER is expected here 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 diff --git a/tests/testsuite.src/syn_occurs.at b/tests/testsuite.src/syn_occurs.at index 08f348440..6a2c0d965 100644 --- a/tests/testsuite.src/syn_occurs.at +++ b/tests/testsuite.src/syn_occurs.at @@ -501,3 +501,114 @@ AT_CHECK([$COMPILE_ONLY -std=mf -fodoslide prog.cob ], [0], [], []) AT_CLEANUP + +AT_SETUP([SET to out-of-range literal]) +#AT_KEYWORDS([SET]) + +AT_DATA([prog.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. prog. + DATA DIVISION. + WORKING-STORAGE SECTION. + 01 G. + 02 X PIC X OCCURS 10 INDEXED I. + 01 LVL-01-CST CONSTANT 12. + 78 LVL-78-CST VALUE 13. + PROCEDURE DIVISION. + SET I TO ZERO. + SET I TO 11. + SET I TO LVL-01-CST. + SET I TO LVL-78-CST. + STOP RUN. +]) + +AT_CHECK([$COMPILE_ONLY prog.cob], [0], [], +[prog.cob:11: warning: SET I TO 0 is out of bounds +prog.cob:12: warning: SET I TO 11 is out of bounds +prog.cob:13: warning: SET I TO 12 is out of bounds +prog.cob:14: warning: SET I TO 13 is out of bounds +]) + +AT_CLEANUP + + +AT_SETUP([SET index]) +#AT_KEYWORDS([SET]) + +AT_DATA([prog.cob], [ + IDENTIFICATION DIVISION. + PROGRAM-ID. prog. + DATA DIVISION. + WORKING-STORAGE SECTION. + 01 BINB PIC 9(9) COMP-5 VALUE 42. + 01 NIDX PIC S99. + 01 MYIDX USAGE IS INDEX. + 01 MAXIDX PIC 9999 VALUE 3 COMP-5. + 01 TBL. + 05 FILLER PIC X(8) VALUE "Fred". + 05 FILLER PIC X(8) VALUE "Barney". + 05 FILLER PIC X(8) VALUE "Wilma". + 05 FILLER PIC X(8) VALUE "Betty". + 01 FILLER REDEFINES TBL. + 05 MYNAME PIC X(8) OCCURS 4 INDEXED BY IB1. + 01 TBL2. + 05 MYMRK PIC X(3) + OCCURS 2 TO 5 DEPENDING ON MAXIDX + INDEXED BY IB2. + PROCEDURE DIVISION. + MOVE 5 TO MAXIDX + SET NIDX TO IB1. + DISPLAY "Initial value: " NIDX. + SET IB2 TO 0.2. + SET IB2 TO "fred". + SET IB2 TO 10. + MOVE "A:" TO MYMRK (1) + MOVE "B:" TO MYMRK (2) + MOVE "C:" TO MYMRK (3) + MOVE "D:" TO MYMRK (4) + MOVE "E:" TO MYMRK (5) + MOVE 3 TO MAXIDX. + SET IB1 TO 2. + SET MYIDX TO IB1. + SET IB1 TO 1. + SET MYIDX TO IB1. + SET IB1, IB2 TO 4. + SET IB2 TO MAXIDX. + SET IB1, IB2 UP BY 1. + SET IB1 TO 3. + SET MYIDX TO IB1. + MOVE -1 TO NIDX + SET IB1 TO NIDX. + SET IB1 TO -9. + SET IB1 TO 300. + MOVE 400 TO IB1. + PERFORM VARYING IB1 FROM 1 BY 1 UNTIL IB1 > MAXIDX + SET IB2 TO IB1 + SET NIDX TO IB1 + SET MYIDX TO IB1 + DISPLAY NIDX ": " MYMRK (IB2) MYNAME (IB1) "." + IF MYNAME (NIDX) = "Fred" + MOVE "Freddy" TO MYNAME (NIDX) + END-IF + END-PERFORM. + PERFORM VARYING IB2 FROM 1 BY 1 UNTIL IB2 > 4 + SET IB1 TO IB2 + SET NIDX TO IB1 + SET MYIDX TO IB1 + DISPLAY NIDX ": " MYMRK (IB2) MYNAME (IB1) "." + IF MYNAME (IB1) = "Fred" + MOVE "Freddy" TO MYNAME (IB1) + END-IF + END-PERFORM. + STOP RUN. + END PROGRAM prog. +]) + +AT_CHECK([$COMPILE_ONLY prog.cob], [1], [], [prog.cob:25: error: an integer, INDEX, or a POINTER is expected here +prog.cob:26: error: an integer, INDEX, or a POINTER is expected here +prog.cob:27: warning: SET IB2 TO 10 is out of bounds +prog.cob:45: warning: SET IB1 TO -9 is out of bounds +prog.cob:46: warning: SET IB1 TO 300 is out of bounds +]) + +AT_CLEANUP diff --git a/tests/testsuite.src/syn_value.at b/tests/testsuite.src/syn_value.at index 6cb2c5117..3ecf763ef 100644 --- a/tests/testsuite.src/syn_value.at +++ b/tests/testsuite.src/syn_value.at @@ -1,4 +1,5 @@ -## Copyright (C) 2003-2012, 2017-2018, 2022 Free Software Foundation, Inc. +## Copyright (C) 2003-2012, 2017-2018, 2022-2023 Free Software +## Foundation, Inc. ## Written by Keisuke Nishida, Roger While, Simon Sobisch ## ## This file is part of GnuCOBOL. @@ -303,19 +304,19 @@ AT_DATA([prog.cob], [ PROGRAM-ID. prog. DATA DIVISION. WORKING-STORAGE SECTION. - 01 X-123 PIC XXX VALUE 123. 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. ]) AT_CHECK([$COMPILE_ONLY prog.cob], [0], [], -[prog.cob:6: warning: alphanumeric value is expected -prog.cob:8: warning: value size exceeds data size -prog.cob:8: note: value size is 4 -prog.cob:9: warning: value does not fit the picture string +[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_CLEANUP @@ -348,6 +349,34 @@ prog.cob:10: note: value size is 4 AT_CLEANUP +AT_SETUP([National item]) +AT_KEYWORDS([value size]) + +AT_DATA([prog.cob], [ + 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. +]) + +AT_CHECK([$COMPILE_ONLY -Wno-unfinished prog.cob], [0], [], +[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_CLEANUP + + # 5) TODO # 6) TODO