summaryrefslogtreecommitdiff
path: root/tests/bc/scripts
diff options
context:
space:
mode:
authorStefan Eßer <se@FreeBSD.org>2025-09-11 16:07:46 +0200
committerStefan Eßer <se@FreeBSD.org>2025-09-11 16:07:46 +0200
commit682da5a0fdb2c38ecc3951047a882471d62aa1d1 (patch)
tree9315c84201e10a5b4cec2eda91146cac4e1c904d /tests/bc/scripts
parent5a7f1dde93a4c681a5a4246ddabc562a7f7ce14d (diff)
vendor/bc: upgrade to version 7.1.0vendor/bc/7.1.0vendor/bc
This update fixes a few bugs: - Improper response to double SIGINT with editline. - Not letting libedit handle terminal size changes. - A dc crash from improperly handling an error. - A duplicate check for reference arrays. - Build failures with GCC 15.
Diffstat (limited to 'tests/bc/scripts')
-rw-r--r--tests/bc/scripts/add_00100.bc (renamed from tests/bc/scripts/add.bc)2
-rw-r--r--tests/bc/scripts/add_00200.bc17
-rw-r--r--tests/bc/scripts/add_00300.bc17
-rw-r--r--tests/bc/scripts/add_00400.bc17
-rw-r--r--tests/bc/scripts/add_00500.bc17
-rw-r--r--tests/bc/scripts/add_00600.bc17
-rw-r--r--tests/bc/scripts/add_00700.bc17
-rw-r--r--tests/bc/scripts/add_00800.bc17
-rw-r--r--tests/bc/scripts/add_00900.bc17
-rw-r--r--tests/bc/scripts/add_01000.bc17
-rw-r--r--tests/bc/scripts/add_01100.bc17
-rw-r--r--tests/bc/scripts/add_01200.bc17
-rw-r--r--tests/bc/scripts/add_01300.bc17
-rw-r--r--tests/bc/scripts/add_01400.bc17
-rw-r--r--tests/bc/scripts/add_01500.bc17
-rw-r--r--tests/bc/scripts/add_01600.bc17
-rw-r--r--tests/bc/scripts/add_01700.bc17
-rw-r--r--tests/bc/scripts/add_01800.bc17
-rw-r--r--tests/bc/scripts/add_01900.bc17
-rw-r--r--tests/bc/scripts/add_02000.bc17
-rw-r--r--tests/bc/scripts/add_02100.bc17
-rw-r--r--tests/bc/scripts/add_02200.bc17
-rw-r--r--tests/bc/scripts/add_02300.bc17
-rw-r--r--tests/bc/scripts/add_02400.bc17
-rw-r--r--tests/bc/scripts/add_02500.bc17
-rw-r--r--tests/bc/scripts/add_02600.bc17
-rw-r--r--tests/bc/scripts/add_02700.bc17
-rw-r--r--tests/bc/scripts/add_02800.bc17
-rw-r--r--tests/bc/scripts/add_02900.bc17
-rw-r--r--tests/bc/scripts/add_03000.bc17
-rw-r--r--tests/bc/scripts/add_03100.bc17
-rw-r--r--tests/bc/scripts/add_03200.bc17
-rw-r--r--tests/bc/scripts/add_03300.bc17
-rw-r--r--tests/bc/scripts/add_03400.bc17
-rw-r--r--tests/bc/scripts/add_03500.bc17
-rw-r--r--tests/bc/scripts/add_03600.bc17
-rw-r--r--tests/bc/scripts/add_03700.bc17
-rw-r--r--tests/bc/scripts/add_03800.bc17
-rw-r--r--tests/bc/scripts/add_03900.bc17
-rw-r--r--tests/bc/scripts/add_04000.bc17
-rw-r--r--tests/bc/scripts/add_04100.bc17
-rw-r--r--tests/bc/scripts/add_04200.bc17
-rw-r--r--tests/bc/scripts/add_04300.bc17
-rw-r--r--tests/bc/scripts/add_04400.bc17
-rw-r--r--tests/bc/scripts/add_04500.bc17
-rw-r--r--tests/bc/scripts/add_04600.bc17
-rw-r--r--tests/bc/scripts/add_04700.bc17
-rw-r--r--tests/bc/scripts/add_04800.bc17
-rw-r--r--tests/bc/scripts/add_04900.bc17
-rw-r--r--tests/bc/scripts/add_05000.bc17
-rw-r--r--tests/bc/scripts/add_05100.bc17
-rw-r--r--tests/bc/scripts/add_05200.bc17
-rw-r--r--tests/bc/scripts/add_05300.bc17
-rw-r--r--tests/bc/scripts/add_05400.bc17
-rw-r--r--tests/bc/scripts/add_05500.bc17
-rw-r--r--tests/bc/scripts/add_05600.bc17
-rw-r--r--tests/bc/scripts/add_05700.bc17
-rw-r--r--tests/bc/scripts/add_05800.bc17
-rw-r--r--tests/bc/scripts/add_05900.bc17
-rw-r--r--tests/bc/scripts/add_06000.bc17
-rw-r--r--tests/bc/scripts/add_06100.bc17
-rw-r--r--tests/bc/scripts/add_06200.bc17
-rw-r--r--tests/bc/scripts/add_06300.bc17
-rw-r--r--tests/bc/scripts/add_06400.bc17
-rw-r--r--tests/bc/scripts/add_06500.bc17
-rw-r--r--tests/bc/scripts/add_06600.bc17
-rw-r--r--tests/bc/scripts/add_06700.bc17
-rw-r--r--tests/bc/scripts/add_06800.bc17
-rw-r--r--tests/bc/scripts/add_06900.bc17
-rw-r--r--tests/bc/scripts/add_07000.bc17
-rw-r--r--tests/bc/scripts/add_07100.bc17
-rw-r--r--tests/bc/scripts/add_07200.bc17
-rw-r--r--tests/bc/scripts/add_07300.bc17
-rw-r--r--tests/bc/scripts/add_07400.bc17
-rw-r--r--tests/bc/scripts/add_07500.bc17
-rw-r--r--tests/bc/scripts/add_07600.bc17
-rw-r--r--tests/bc/scripts/add_07700.bc17
-rw-r--r--tests/bc/scripts/add_07800.bc17
-rw-r--r--tests/bc/scripts/add_07900.bc17
-rw-r--r--tests/bc/scripts/add_08000.bc17
-rw-r--r--tests/bc/scripts/add_08100.bc17
-rw-r--r--tests/bc/scripts/add_08200.bc17
-rw-r--r--tests/bc/scripts/add_08300.bc17
-rw-r--r--tests/bc/scripts/add_08400.bc17
-rw-r--r--tests/bc/scripts/add_08500.bc17
-rw-r--r--tests/bc/scripts/add_08600.bc17
-rw-r--r--tests/bc/scripts/add_08700.bc17
-rw-r--r--tests/bc/scripts/add_08800.bc17
-rw-r--r--tests/bc/scripts/add_08900.bc17
-rw-r--r--tests/bc/scripts/add_09000.bc17
-rw-r--r--tests/bc/scripts/add_09100.bc17
-rw-r--r--tests/bc/scripts/add_09200.bc17
-rw-r--r--tests/bc/scripts/add_09300.bc17
-rw-r--r--tests/bc/scripts/add_09400.bc17
-rw-r--r--tests/bc/scripts/add_09500.bc17
-rw-r--r--tests/bc/scripts/add_09600.bc17
-rw-r--r--tests/bc/scripts/add_09700.bc17
-rw-r--r--tests/bc/scripts/add_09800.bc17
-rw-r--r--tests/bc/scripts/add_09900.bc17
-rw-r--r--tests/bc/scripts/add_10000.bc17
-rw-r--r--tests/bc/scripts/all.txt406
-rw-r--r--tests/bc/scripts/divide_00100.bc (renamed from tests/bc/scripts/divide.bc)2
-rw-r--r--tests/bc/scripts/divide_00200.bc23
-rw-r--r--tests/bc/scripts/divide_00300.bc23
-rw-r--r--tests/bc/scripts/divide_00400.bc23
-rw-r--r--tests/bc/scripts/divide_00500.bc23
-rw-r--r--tests/bc/scripts/divide_00600.bc23
-rw-r--r--tests/bc/scripts/divide_00700.bc23
-rw-r--r--tests/bc/scripts/divide_00800.bc23
-rw-r--r--tests/bc/scripts/divide_00900.bc23
-rw-r--r--tests/bc/scripts/divide_01000.bc23
-rw-r--r--tests/bc/scripts/divide_01100.bc23
-rw-r--r--tests/bc/scripts/divide_01200.bc23
-rw-r--r--tests/bc/scripts/divide_01300.bc23
-rw-r--r--tests/bc/scripts/divide_01400.bc23
-rw-r--r--tests/bc/scripts/divide_01500.bc23
-rw-r--r--tests/bc/scripts/divide_01600.bc23
-rw-r--r--tests/bc/scripts/divide_01700.bc23
-rw-r--r--tests/bc/scripts/divide_01800.bc23
-rw-r--r--tests/bc/scripts/divide_01900.bc23
-rw-r--r--tests/bc/scripts/divide_02000.bc23
-rw-r--r--tests/bc/scripts/divide_02100.bc23
-rw-r--r--tests/bc/scripts/divide_02200.bc23
-rw-r--r--tests/bc/scripts/divide_02300.bc23
-rw-r--r--tests/bc/scripts/divide_02400.bc23
-rw-r--r--tests/bc/scripts/divide_02500.bc23
-rw-r--r--tests/bc/scripts/divide_02600.bc23
-rw-r--r--tests/bc/scripts/divide_02700.bc23
-rw-r--r--tests/bc/scripts/divide_02800.bc23
-rw-r--r--tests/bc/scripts/divide_02900.bc23
-rw-r--r--tests/bc/scripts/divide_03000.bc23
-rw-r--r--tests/bc/scripts/divide_03100.bc23
-rw-r--r--tests/bc/scripts/divide_03200.bc23
-rw-r--r--tests/bc/scripts/divide_03300.bc23
-rw-r--r--tests/bc/scripts/divide_03400.bc23
-rw-r--r--tests/bc/scripts/divide_03500.bc23
-rw-r--r--tests/bc/scripts/divide_03600.bc23
-rw-r--r--tests/bc/scripts/divide_03700.bc23
-rw-r--r--tests/bc/scripts/divide_03800.bc23
-rw-r--r--tests/bc/scripts/divide_03900.bc23
-rw-r--r--tests/bc/scripts/divide_04000.bc23
-rw-r--r--tests/bc/scripts/divide_04100.bc23
-rw-r--r--tests/bc/scripts/divide_04200.bc23
-rw-r--r--tests/bc/scripts/divide_04300.bc23
-rw-r--r--tests/bc/scripts/divide_04400.bc23
-rw-r--r--tests/bc/scripts/divide_04500.bc23
-rw-r--r--tests/bc/scripts/divide_04600.bc23
-rw-r--r--tests/bc/scripts/divide_04700.bc23
-rw-r--r--tests/bc/scripts/divide_04800.bc23
-rw-r--r--tests/bc/scripts/divide_04900.bc23
-rw-r--r--tests/bc/scripts/divide_05000.bc23
-rw-r--r--tests/bc/scripts/divide_05100.bc23
-rw-r--r--tests/bc/scripts/divide_05200.bc23
-rw-r--r--tests/bc/scripts/divide_05300.bc23
-rw-r--r--tests/bc/scripts/divide_05400.bc23
-rw-r--r--tests/bc/scripts/divide_05500.bc23
-rw-r--r--tests/bc/scripts/divide_05600.bc23
-rw-r--r--tests/bc/scripts/divide_05700.bc23
-rw-r--r--tests/bc/scripts/divide_05800.bc23
-rw-r--r--tests/bc/scripts/divide_05900.bc23
-rw-r--r--tests/bc/scripts/divide_06000.bc23
-rw-r--r--tests/bc/scripts/divide_06100.bc23
-rw-r--r--tests/bc/scripts/divide_06200.bc23
-rw-r--r--tests/bc/scripts/divide_06300.bc23
-rw-r--r--tests/bc/scripts/divide_06400.bc23
-rw-r--r--tests/bc/scripts/divide_06500.bc23
-rw-r--r--tests/bc/scripts/divide_06600.bc23
-rw-r--r--tests/bc/scripts/divide_06700.bc23
-rw-r--r--tests/bc/scripts/divide_06800.bc23
-rw-r--r--tests/bc/scripts/divide_06900.bc23
-rw-r--r--tests/bc/scripts/divide_07000.bc23
-rw-r--r--tests/bc/scripts/divide_07100.bc23
-rw-r--r--tests/bc/scripts/divide_07200.bc23
-rw-r--r--tests/bc/scripts/divide_07300.bc23
-rw-r--r--tests/bc/scripts/divide_07400.bc23
-rw-r--r--tests/bc/scripts/divide_07500.bc23
-rw-r--r--tests/bc/scripts/divide_07600.bc23
-rw-r--r--tests/bc/scripts/divide_07700.bc23
-rw-r--r--tests/bc/scripts/divide_07800.bc23
-rw-r--r--tests/bc/scripts/divide_07900.bc23
-rw-r--r--tests/bc/scripts/divide_08000.bc23
-rw-r--r--tests/bc/scripts/divide_08100.bc23
-rw-r--r--tests/bc/scripts/divide_08200.bc23
-rw-r--r--tests/bc/scripts/divide_08300.bc23
-rw-r--r--tests/bc/scripts/divide_08400.bc23
-rw-r--r--tests/bc/scripts/divide_08500.bc23
-rw-r--r--tests/bc/scripts/divide_08600.bc23
-rw-r--r--tests/bc/scripts/divide_08700.bc23
-rw-r--r--tests/bc/scripts/divide_08800.bc23
-rw-r--r--tests/bc/scripts/divide_08900.bc23
-rw-r--r--tests/bc/scripts/divide_09000.bc23
-rw-r--r--tests/bc/scripts/divide_09100.bc23
-rw-r--r--tests/bc/scripts/divide_09200.bc23
-rw-r--r--tests/bc/scripts/divide_09300.bc23
-rw-r--r--tests/bc/scripts/divide_09400.bc23
-rw-r--r--tests/bc/scripts/divide_09500.bc23
-rw-r--r--tests/bc/scripts/divide_09600.bc23
-rw-r--r--tests/bc/scripts/divide_09700.bc23
-rw-r--r--tests/bc/scripts/divide_09800.bc23
-rw-r--r--tests/bc/scripts/divide_09900.bc23
-rw-r--r--tests/bc/scripts/divide_10000.bc23
-rw-r--r--tests/bc/scripts/multiply_00100.bc (renamed from tests/bc/scripts/multiply.bc)2
-rw-r--r--tests/bc/scripts/multiply_00200.bc20
-rw-r--r--tests/bc/scripts/multiply_00300.bc20
-rw-r--r--tests/bc/scripts/multiply_00400.bc20
-rw-r--r--tests/bc/scripts/multiply_00500.bc20
-rw-r--r--tests/bc/scripts/multiply_00600.bc20
-rw-r--r--tests/bc/scripts/multiply_00700.bc20
-rw-r--r--tests/bc/scripts/multiply_00800.bc20
-rw-r--r--tests/bc/scripts/multiply_00900.bc20
-rw-r--r--tests/bc/scripts/multiply_01000.bc20
-rw-r--r--tests/bc/scripts/multiply_01100.bc20
-rw-r--r--tests/bc/scripts/multiply_01200.bc20
-rw-r--r--tests/bc/scripts/multiply_01300.bc20
-rw-r--r--tests/bc/scripts/multiply_01400.bc20
-rw-r--r--tests/bc/scripts/multiply_01500.bc20
-rw-r--r--tests/bc/scripts/multiply_01600.bc20
-rw-r--r--tests/bc/scripts/multiply_01700.bc20
-rw-r--r--tests/bc/scripts/multiply_01800.bc20
-rw-r--r--tests/bc/scripts/multiply_01900.bc20
-rw-r--r--tests/bc/scripts/multiply_02000.bc20
-rw-r--r--tests/bc/scripts/multiply_02100.bc20
-rw-r--r--tests/bc/scripts/multiply_02200.bc20
-rw-r--r--tests/bc/scripts/multiply_02300.bc20
-rw-r--r--tests/bc/scripts/multiply_02400.bc20
-rw-r--r--tests/bc/scripts/multiply_02500.bc20
-rw-r--r--tests/bc/scripts/multiply_02600.bc20
-rw-r--r--tests/bc/scripts/multiply_02700.bc20
-rw-r--r--tests/bc/scripts/multiply_02800.bc20
-rw-r--r--tests/bc/scripts/multiply_02900.bc20
-rw-r--r--tests/bc/scripts/multiply_03000.bc20
-rw-r--r--tests/bc/scripts/multiply_03100.bc20
-rw-r--r--tests/bc/scripts/multiply_03200.bc20
-rw-r--r--tests/bc/scripts/multiply_03300.bc20
-rw-r--r--tests/bc/scripts/multiply_03400.bc20
-rw-r--r--tests/bc/scripts/multiply_03500.bc20
-rw-r--r--tests/bc/scripts/multiply_03600.bc20
-rw-r--r--tests/bc/scripts/multiply_03700.bc20
-rw-r--r--tests/bc/scripts/multiply_03800.bc20
-rw-r--r--tests/bc/scripts/multiply_03900.bc20
-rw-r--r--tests/bc/scripts/multiply_04000.bc20
-rw-r--r--tests/bc/scripts/multiply_04100.bc20
-rw-r--r--tests/bc/scripts/multiply_04200.bc20
-rw-r--r--tests/bc/scripts/multiply_04300.bc20
-rw-r--r--tests/bc/scripts/multiply_04400.bc20
-rw-r--r--tests/bc/scripts/multiply_04500.bc20
-rw-r--r--tests/bc/scripts/multiply_04600.bc20
-rw-r--r--tests/bc/scripts/multiply_04700.bc20
-rw-r--r--tests/bc/scripts/multiply_04800.bc20
-rw-r--r--tests/bc/scripts/multiply_04900.bc20
-rw-r--r--tests/bc/scripts/multiply_05000.bc20
-rw-r--r--tests/bc/scripts/multiply_05100.bc20
-rw-r--r--tests/bc/scripts/multiply_05200.bc20
-rw-r--r--tests/bc/scripts/multiply_05300.bc20
-rw-r--r--tests/bc/scripts/multiply_05400.bc20
-rw-r--r--tests/bc/scripts/multiply_05500.bc20
-rw-r--r--tests/bc/scripts/multiply_05600.bc20
-rw-r--r--tests/bc/scripts/multiply_05700.bc20
-rw-r--r--tests/bc/scripts/multiply_05800.bc20
-rw-r--r--tests/bc/scripts/multiply_05900.bc20
-rw-r--r--tests/bc/scripts/multiply_06000.bc20
-rw-r--r--tests/bc/scripts/multiply_06100.bc20
-rw-r--r--tests/bc/scripts/multiply_06200.bc20
-rw-r--r--tests/bc/scripts/multiply_06300.bc20
-rw-r--r--tests/bc/scripts/multiply_06400.bc20
-rw-r--r--tests/bc/scripts/multiply_06500.bc20
-rw-r--r--tests/bc/scripts/multiply_06600.bc20
-rw-r--r--tests/bc/scripts/multiply_06700.bc20
-rw-r--r--tests/bc/scripts/multiply_06800.bc20
-rw-r--r--tests/bc/scripts/multiply_06900.bc20
-rw-r--r--tests/bc/scripts/multiply_07000.bc20
-rw-r--r--tests/bc/scripts/multiply_07100.bc20
-rw-r--r--tests/bc/scripts/multiply_07200.bc20
-rw-r--r--tests/bc/scripts/multiply_07300.bc20
-rw-r--r--tests/bc/scripts/multiply_07400.bc20
-rw-r--r--tests/bc/scripts/multiply_07500.bc20
-rw-r--r--tests/bc/scripts/multiply_07600.bc20
-rw-r--r--tests/bc/scripts/multiply_07700.bc20
-rw-r--r--tests/bc/scripts/multiply_07800.bc20
-rw-r--r--tests/bc/scripts/multiply_07900.bc20
-rw-r--r--tests/bc/scripts/multiply_08000.bc20
-rw-r--r--tests/bc/scripts/multiply_08100.bc20
-rw-r--r--tests/bc/scripts/multiply_08200.bc20
-rw-r--r--tests/bc/scripts/multiply_08300.bc20
-rw-r--r--tests/bc/scripts/multiply_08400.bc20
-rw-r--r--tests/bc/scripts/multiply_08500.bc20
-rw-r--r--tests/bc/scripts/multiply_08600.bc20
-rw-r--r--tests/bc/scripts/multiply_08700.bc20
-rw-r--r--tests/bc/scripts/multiply_08800.bc20
-rw-r--r--tests/bc/scripts/multiply_08900.bc20
-rw-r--r--tests/bc/scripts/multiply_09000.bc20
-rw-r--r--tests/bc/scripts/multiply_09100.bc20
-rw-r--r--tests/bc/scripts/multiply_09200.bc20
-rw-r--r--tests/bc/scripts/multiply_09300.bc20
-rw-r--r--tests/bc/scripts/multiply_09400.bc20
-rw-r--r--tests/bc/scripts/multiply_09500.bc20
-rw-r--r--tests/bc/scripts/multiply_09600.bc20
-rw-r--r--tests/bc/scripts/multiply_09700.bc20
-rw-r--r--tests/bc/scripts/multiply_09800.bc20
-rw-r--r--tests/bc/scripts/multiply_09900.bc20
-rw-r--r--tests/bc/scripts/multiply_10000.bc20
-rw-r--r--tests/bc/scripts/parse.bc20
-rw-r--r--tests/bc/scripts/parse_02.bc19
-rw-r--r--tests/bc/scripts/parse_03.bc19
-rw-r--r--tests/bc/scripts/parse_04.bc19
-rw-r--r--tests/bc/scripts/parse_05.bc19
-rw-r--r--tests/bc/scripts/parse_06.bc19
-rw-r--r--tests/bc/scripts/parse_07.bc19
-rw-r--r--tests/bc/scripts/parse_08.bc19
-rw-r--r--tests/bc/scripts/parse_09.bc19
-rw-r--r--tests/bc/scripts/parse_11.bc19
-rw-r--r--tests/bc/scripts/parse_12.bc19
-rw-r--r--tests/bc/scripts/parse_13.bc19
-rw-r--r--tests/bc/scripts/parse_14.bc19
-rw-r--r--tests/bc/scripts/parse_15.bc19
-rw-r--r--tests/bc/scripts/parse_16.bc19
-rw-r--r--tests/bc/scripts/print.bc25
-rw-r--r--tests/bc/scripts/print_002.bc22
-rw-r--r--tests/bc/scripts/print_003.bc22
-rw-r--r--tests/bc/scripts/print_004.bc22
-rw-r--r--tests/bc/scripts/print_005.bc22
-rw-r--r--tests/bc/scripts/print_006.bc22
-rw-r--r--tests/bc/scripts/print_007.bc22
-rw-r--r--tests/bc/scripts/print_008.bc22
-rw-r--r--tests/bc/scripts/print_009.bc22
-rw-r--r--tests/bc/scripts/print_011.bc22
-rw-r--r--tests/bc/scripts/print_012.bc22
-rw-r--r--tests/bc/scripts/print_013.bc22
-rw-r--r--tests/bc/scripts/print_014.bc22
-rw-r--r--tests/bc/scripts/print_015.bc22
-rw-r--r--tests/bc/scripts/print_016.bc22
-rw-r--r--tests/bc/scripts/print_017.bc22
-rw-r--r--tests/bc/scripts/print_018.bc22
-rw-r--r--tests/bc/scripts/print_019.bc22
-rw-r--r--tests/bc/scripts/print_020.bc22
-rw-r--r--tests/bc/scripts/print_021.bc22
-rw-r--r--tests/bc/scripts/print_022.bc22
-rw-r--r--tests/bc/scripts/print_023.bc22
-rw-r--r--tests/bc/scripts/print_024.bc22
-rw-r--r--tests/bc/scripts/print_025.bc22
-rw-r--r--tests/bc/scripts/print_026.bc22
-rw-r--r--tests/bc/scripts/print_027.bc22
-rw-r--r--tests/bc/scripts/print_028.bc22
-rw-r--r--tests/bc/scripts/print_029.bc22
-rw-r--r--tests/bc/scripts/print_030.bc22
-rw-r--r--tests/bc/scripts/print_031.bc22
-rw-r--r--tests/bc/scripts/print_032.bc22
-rw-r--r--tests/bc/scripts/print_033.bc22
-rw-r--r--tests/bc/scripts/print_034.bc22
-rw-r--r--tests/bc/scripts/print_035.bc22
-rw-r--r--tests/bc/scripts/print_036.bc22
-rw-r--r--tests/bc/scripts/print_037.bc22
-rw-r--r--tests/bc/scripts/print_038.bc22
-rw-r--r--tests/bc/scripts/print_039.bc22
-rw-r--r--tests/bc/scripts/print_040.bc22
-rw-r--r--tests/bc/scripts/print_041.bc22
-rw-r--r--tests/bc/scripts/print_042.bc22
-rw-r--r--tests/bc/scripts/print_043.bc22
-rw-r--r--tests/bc/scripts/print_044.bc22
-rw-r--r--tests/bc/scripts/print_045.bc22
-rw-r--r--tests/bc/scripts/print_046.bc22
-rw-r--r--tests/bc/scripts/print_047.bc22
-rw-r--r--tests/bc/scripts/print_048.bc22
-rw-r--r--tests/bc/scripts/print_049.bc22
-rw-r--r--tests/bc/scripts/print_050.bc22
-rw-r--r--tests/bc/scripts/print_051.bc22
-rw-r--r--tests/bc/scripts/print_052.bc22
-rw-r--r--tests/bc/scripts/print_053.bc22
-rw-r--r--tests/bc/scripts/print_054.bc22
-rw-r--r--tests/bc/scripts/print_055.bc22
-rw-r--r--tests/bc/scripts/print_056.bc22
-rw-r--r--tests/bc/scripts/print_057.bc22
-rw-r--r--tests/bc/scripts/print_058.bc22
-rw-r--r--tests/bc/scripts/print_059.bc22
-rw-r--r--tests/bc/scripts/print_060.bc22
-rw-r--r--tests/bc/scripts/print_061.bc22
-rw-r--r--tests/bc/scripts/print_062.bc22
-rw-r--r--tests/bc/scripts/print_063.bc22
-rw-r--r--tests/bc/scripts/print_064.bc22
-rw-r--r--tests/bc/scripts/print_065.bc22
-rw-r--r--tests/bc/scripts/print_066.bc22
-rw-r--r--tests/bc/scripts/print_067.bc22
-rw-r--r--tests/bc/scripts/print_068.bc22
-rw-r--r--tests/bc/scripts/print_069.bc22
-rw-r--r--tests/bc/scripts/print_070.bc22
-rw-r--r--tests/bc/scripts/print_071.bc22
-rw-r--r--tests/bc/scripts/print_072.bc22
-rw-r--r--tests/bc/scripts/print_073.bc22
-rw-r--r--tests/bc/scripts/print_074.bc22
-rw-r--r--tests/bc/scripts/print_075.bc22
-rw-r--r--tests/bc/scripts/print_076.bc22
-rw-r--r--tests/bc/scripts/print_077.bc22
-rw-r--r--tests/bc/scripts/print_078.bc22
-rw-r--r--tests/bc/scripts/print_079.bc22
-rw-r--r--tests/bc/scripts/print_080.bc22
-rw-r--r--tests/bc/scripts/print_081.bc22
-rw-r--r--tests/bc/scripts/print_082.bc22
-rw-r--r--tests/bc/scripts/print_083.bc22
-rw-r--r--tests/bc/scripts/print_084.bc22
-rw-r--r--tests/bc/scripts/print_085.bc22
-rw-r--r--tests/bc/scripts/print_086.bc22
-rw-r--r--tests/bc/scripts/print_087.bc22
-rw-r--r--tests/bc/scripts/print_088.bc22
-rw-r--r--tests/bc/scripts/print_089.bc22
-rw-r--r--tests/bc/scripts/print_090.bc22
-rw-r--r--tests/bc/scripts/print_091.bc22
-rw-r--r--tests/bc/scripts/print_092.bc22
-rw-r--r--tests/bc/scripts/print_093.bc22
-rw-r--r--tests/bc/scripts/print_094.bc22
-rw-r--r--tests/bc/scripts/print_095.bc22
-rw-r--r--tests/bc/scripts/print_096.bc22
-rw-r--r--tests/bc/scripts/print_097.bc22
-rw-r--r--tests/bc/scripts/print_098.bc22
-rw-r--r--tests/bc/scripts/print_099.bc22
-rw-r--r--tests/bc/scripts/print_100.bc22
-rw-r--r--tests/bc/scripts/subtract_00100.bc (renamed from tests/bc/scripts/subtract.bc)2
-rw-r--r--tests/bc/scripts/subtract_00200.bc17
-rw-r--r--tests/bc/scripts/subtract_00300.bc17
-rw-r--r--tests/bc/scripts/subtract_00400.bc17
-rw-r--r--tests/bc/scripts/subtract_00500.bc17
-rw-r--r--tests/bc/scripts/subtract_00600.bc17
-rw-r--r--tests/bc/scripts/subtract_00700.bc17
-rw-r--r--tests/bc/scripts/subtract_00800.bc17
-rw-r--r--tests/bc/scripts/subtract_00900.bc17
-rw-r--r--tests/bc/scripts/subtract_01000.bc17
-rw-r--r--tests/bc/scripts/subtract_01100.bc17
-rw-r--r--tests/bc/scripts/subtract_01200.bc17
-rw-r--r--tests/bc/scripts/subtract_01300.bc17
-rw-r--r--tests/bc/scripts/subtract_01400.bc17
-rw-r--r--tests/bc/scripts/subtract_01500.bc17
-rw-r--r--tests/bc/scripts/subtract_01600.bc17
-rw-r--r--tests/bc/scripts/subtract_01700.bc17
-rw-r--r--tests/bc/scripts/subtract_01800.bc17
-rw-r--r--tests/bc/scripts/subtract_01900.bc17
-rw-r--r--tests/bc/scripts/subtract_02000.bc17
-rw-r--r--tests/bc/scripts/subtract_02100.bc17
-rw-r--r--tests/bc/scripts/subtract_02200.bc17
-rw-r--r--tests/bc/scripts/subtract_02300.bc17
-rw-r--r--tests/bc/scripts/subtract_02400.bc17
-rw-r--r--tests/bc/scripts/subtract_02500.bc17
-rw-r--r--tests/bc/scripts/subtract_02600.bc17
-rw-r--r--tests/bc/scripts/subtract_02700.bc17
-rw-r--r--tests/bc/scripts/subtract_02800.bc17
-rw-r--r--tests/bc/scripts/subtract_02900.bc17
-rw-r--r--tests/bc/scripts/subtract_03000.bc17
-rw-r--r--tests/bc/scripts/subtract_03100.bc17
-rw-r--r--tests/bc/scripts/subtract_03200.bc17
-rw-r--r--tests/bc/scripts/subtract_03300.bc17
-rw-r--r--tests/bc/scripts/subtract_03400.bc17
-rw-r--r--tests/bc/scripts/subtract_03500.bc17
-rw-r--r--tests/bc/scripts/subtract_03600.bc17
-rw-r--r--tests/bc/scripts/subtract_03700.bc17
-rw-r--r--tests/bc/scripts/subtract_03800.bc17
-rw-r--r--tests/bc/scripts/subtract_03900.bc17
-rw-r--r--tests/bc/scripts/subtract_04000.bc17
-rw-r--r--tests/bc/scripts/subtract_04100.bc17
-rw-r--r--tests/bc/scripts/subtract_04200.bc17
-rw-r--r--tests/bc/scripts/subtract_04300.bc17
-rw-r--r--tests/bc/scripts/subtract_04400.bc17
-rw-r--r--tests/bc/scripts/subtract_04500.bc17
-rw-r--r--tests/bc/scripts/subtract_04600.bc17
-rw-r--r--tests/bc/scripts/subtract_04700.bc17
-rw-r--r--tests/bc/scripts/subtract_04800.bc17
-rw-r--r--tests/bc/scripts/subtract_04900.bc17
-rw-r--r--tests/bc/scripts/subtract_05000.bc17
-rw-r--r--tests/bc/scripts/subtract_05100.bc17
-rw-r--r--tests/bc/scripts/subtract_05200.bc17
-rw-r--r--tests/bc/scripts/subtract_05300.bc17
-rw-r--r--tests/bc/scripts/subtract_05400.bc17
-rw-r--r--tests/bc/scripts/subtract_05500.bc17
-rw-r--r--tests/bc/scripts/subtract_05600.bc17
-rw-r--r--tests/bc/scripts/subtract_05700.bc17
-rw-r--r--tests/bc/scripts/subtract_05800.bc17
-rw-r--r--tests/bc/scripts/subtract_05900.bc17
-rw-r--r--tests/bc/scripts/subtract_06000.bc17
-rw-r--r--tests/bc/scripts/subtract_06100.bc17
-rw-r--r--tests/bc/scripts/subtract_06200.bc17
-rw-r--r--tests/bc/scripts/subtract_06300.bc17
-rw-r--r--tests/bc/scripts/subtract_06400.bc17
-rw-r--r--tests/bc/scripts/subtract_06500.bc17
-rw-r--r--tests/bc/scripts/subtract_06600.bc17
-rw-r--r--tests/bc/scripts/subtract_06700.bc17
-rw-r--r--tests/bc/scripts/subtract_06800.bc17
-rw-r--r--tests/bc/scripts/subtract_06900.bc17
-rw-r--r--tests/bc/scripts/subtract_07000.bc17
-rw-r--r--tests/bc/scripts/subtract_07100.bc17
-rw-r--r--tests/bc/scripts/subtract_07200.bc17
-rw-r--r--tests/bc/scripts/subtract_07300.bc17
-rw-r--r--tests/bc/scripts/subtract_07400.bc17
-rw-r--r--tests/bc/scripts/subtract_07500.bc17
-rw-r--r--tests/bc/scripts/subtract_07600.bc17
-rw-r--r--tests/bc/scripts/subtract_07700.bc17
-rw-r--r--tests/bc/scripts/subtract_07800.bc17
-rw-r--r--tests/bc/scripts/subtract_07900.bc17
-rw-r--r--tests/bc/scripts/subtract_08000.bc17
-rw-r--r--tests/bc/scripts/subtract_08100.bc17
-rw-r--r--tests/bc/scripts/subtract_08200.bc17
-rw-r--r--tests/bc/scripts/subtract_08300.bc17
-rw-r--r--tests/bc/scripts/subtract_08400.bc17
-rw-r--r--tests/bc/scripts/subtract_08500.bc17
-rw-r--r--tests/bc/scripts/subtract_08600.bc17
-rw-r--r--tests/bc/scripts/subtract_08700.bc17
-rw-r--r--tests/bc/scripts/subtract_08800.bc17
-rw-r--r--tests/bc/scripts/subtract_08900.bc17
-rw-r--r--tests/bc/scripts/subtract_09000.bc17
-rw-r--r--tests/bc/scripts/subtract_09100.bc17
-rw-r--r--tests/bc/scripts/subtract_09200.bc17
-rw-r--r--tests/bc/scripts/subtract_09300.bc17
-rw-r--r--tests/bc/scripts/subtract_09400.bc17
-rw-r--r--tests/bc/scripts/subtract_09500.bc17
-rw-r--r--tests/bc/scripts/subtract_09600.bc17
-rw-r--r--tests/bc/scripts/subtract_09700.bc17
-rw-r--r--tests/bc/scripts/subtract_09800.bc17
-rw-r--r--tests/bc/scripts/subtract_09900.bc17
-rw-r--r--tests/bc/scripts/subtract_10000.bc17
515 files changed, 10449 insertions, 55 deletions
diff --git a/tests/bc/scripts/add.bc b/tests/bc/scripts/add_00100.bc
index 9cffa2c28750..687ba889c307 100644
--- a/tests/bc/scripts/add.bc
+++ b/tests/bc/scripts/add_00100.bc
@@ -10,7 +10,7 @@ for (i = 0; i <= len; ++i) {
a[i]
}
-for (i = 1; i <= 10000; ++i) {
+for (i = 1; i <= 100; ++i) {
for (j = 0; j < len; ++j) {
a[i] + a[j]
}
diff --git a/tests/bc/scripts/add_00200.bc b/tests/bc/scripts/add_00200.bc
new file mode 100644
index 000000000000..21112195c65d
--- /dev/null
+++ b/tests/bc/scripts/add_00200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 101; i <= 200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_00300.bc b/tests/bc/scripts/add_00300.bc
new file mode 100644
index 000000000000..1b2cb7784754
--- /dev/null
+++ b/tests/bc/scripts/add_00300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 201; i <= 300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_00400.bc b/tests/bc/scripts/add_00400.bc
new file mode 100644
index 000000000000..e8a8def0450c
--- /dev/null
+++ b/tests/bc/scripts/add_00400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 301; i <= 400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_00500.bc b/tests/bc/scripts/add_00500.bc
new file mode 100644
index 000000000000..971991e0f457
--- /dev/null
+++ b/tests/bc/scripts/add_00500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 401; i <= 500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_00600.bc b/tests/bc/scripts/add_00600.bc
new file mode 100644
index 000000000000..dc758b170e5e
--- /dev/null
+++ b/tests/bc/scripts/add_00600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 501; i <= 600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_00700.bc b/tests/bc/scripts/add_00700.bc
new file mode 100644
index 000000000000..6819689561d5
--- /dev/null
+++ b/tests/bc/scripts/add_00700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 601; i <= 700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_00800.bc b/tests/bc/scripts/add_00800.bc
new file mode 100644
index 000000000000..593144457957
--- /dev/null
+++ b/tests/bc/scripts/add_00800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 701; i <= 800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_00900.bc b/tests/bc/scripts/add_00900.bc
new file mode 100644
index 000000000000..a6cee4ff0b39
--- /dev/null
+++ b/tests/bc/scripts/add_00900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 801; i <= 900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_01000.bc b/tests/bc/scripts/add_01000.bc
new file mode 100644
index 000000000000..6f3d42a3590f
--- /dev/null
+++ b/tests/bc/scripts/add_01000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 901; i <= 1000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_01100.bc b/tests/bc/scripts/add_01100.bc
new file mode 100644
index 000000000000..98866672d814
--- /dev/null
+++ b/tests/bc/scripts/add_01100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1001; i <= 1100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_01200.bc b/tests/bc/scripts/add_01200.bc
new file mode 100644
index 000000000000..82b74b103fb0
--- /dev/null
+++ b/tests/bc/scripts/add_01200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1101; i <= 1200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_01300.bc b/tests/bc/scripts/add_01300.bc
new file mode 100644
index 000000000000..45e0ea4637cb
--- /dev/null
+++ b/tests/bc/scripts/add_01300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1201; i <= 1300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_01400.bc b/tests/bc/scripts/add_01400.bc
new file mode 100644
index 000000000000..123fba19dcc0
--- /dev/null
+++ b/tests/bc/scripts/add_01400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1301; i <= 1400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_01500.bc b/tests/bc/scripts/add_01500.bc
new file mode 100644
index 000000000000..59a2a0dac4d1
--- /dev/null
+++ b/tests/bc/scripts/add_01500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1401; i <= 1500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_01600.bc b/tests/bc/scripts/add_01600.bc
new file mode 100644
index 000000000000..2df24a0c006c
--- /dev/null
+++ b/tests/bc/scripts/add_01600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1501; i <= 1600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_01700.bc b/tests/bc/scripts/add_01700.bc
new file mode 100644
index 000000000000..0646f0b881c8
--- /dev/null
+++ b/tests/bc/scripts/add_01700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1601; i <= 1700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_01800.bc b/tests/bc/scripts/add_01800.bc
new file mode 100644
index 000000000000..65a725c9cc0c
--- /dev/null
+++ b/tests/bc/scripts/add_01800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1701; i <= 1800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_01900.bc b/tests/bc/scripts/add_01900.bc
new file mode 100644
index 000000000000..b73af970dd5c
--- /dev/null
+++ b/tests/bc/scripts/add_01900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1801; i <= 1900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_02000.bc b/tests/bc/scripts/add_02000.bc
new file mode 100644
index 000000000000..ea76021121c3
--- /dev/null
+++ b/tests/bc/scripts/add_02000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1901; i <= 2000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_02100.bc b/tests/bc/scripts/add_02100.bc
new file mode 100644
index 000000000000..0bc93bf08aa2
--- /dev/null
+++ b/tests/bc/scripts/add_02100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2001; i <= 2100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_02200.bc b/tests/bc/scripts/add_02200.bc
new file mode 100644
index 000000000000..ad1aa7a32708
--- /dev/null
+++ b/tests/bc/scripts/add_02200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2101; i <= 2200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_02300.bc b/tests/bc/scripts/add_02300.bc
new file mode 100644
index 000000000000..8e9622db6390
--- /dev/null
+++ b/tests/bc/scripts/add_02300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2201; i <= 2300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_02400.bc b/tests/bc/scripts/add_02400.bc
new file mode 100644
index 000000000000..4cedd06b481f
--- /dev/null
+++ b/tests/bc/scripts/add_02400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2301; i <= 2400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_02500.bc b/tests/bc/scripts/add_02500.bc
new file mode 100644
index 000000000000..75b599350b6a
--- /dev/null
+++ b/tests/bc/scripts/add_02500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2401; i <= 2500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_02600.bc b/tests/bc/scripts/add_02600.bc
new file mode 100644
index 000000000000..ea371d5b3e96
--- /dev/null
+++ b/tests/bc/scripts/add_02600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2501; i <= 2600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_02700.bc b/tests/bc/scripts/add_02700.bc
new file mode 100644
index 000000000000..6e03b41c9549
--- /dev/null
+++ b/tests/bc/scripts/add_02700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2601; i <= 2700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_02800.bc b/tests/bc/scripts/add_02800.bc
new file mode 100644
index 000000000000..91e3dc906498
--- /dev/null
+++ b/tests/bc/scripts/add_02800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2701; i <= 2800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_02900.bc b/tests/bc/scripts/add_02900.bc
new file mode 100644
index 000000000000..ab103da6cc1f
--- /dev/null
+++ b/tests/bc/scripts/add_02900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2801; i <= 2900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_03000.bc b/tests/bc/scripts/add_03000.bc
new file mode 100644
index 000000000000..f0149001652e
--- /dev/null
+++ b/tests/bc/scripts/add_03000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2901; i <= 3000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_03100.bc b/tests/bc/scripts/add_03100.bc
new file mode 100644
index 000000000000..371d3d6d0977
--- /dev/null
+++ b/tests/bc/scripts/add_03100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3001; i <= 3100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_03200.bc b/tests/bc/scripts/add_03200.bc
new file mode 100644
index 000000000000..d8f361df8748
--- /dev/null
+++ b/tests/bc/scripts/add_03200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3101; i <= 3200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_03300.bc b/tests/bc/scripts/add_03300.bc
new file mode 100644
index 000000000000..115f61b128c5
--- /dev/null
+++ b/tests/bc/scripts/add_03300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3201; i <= 3300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_03400.bc b/tests/bc/scripts/add_03400.bc
new file mode 100644
index 000000000000..c5dbb7b1148c
--- /dev/null
+++ b/tests/bc/scripts/add_03400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3301; i <= 3400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_03500.bc b/tests/bc/scripts/add_03500.bc
new file mode 100644
index 000000000000..f487c0d05ce9
--- /dev/null
+++ b/tests/bc/scripts/add_03500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3401; i <= 3500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_03600.bc b/tests/bc/scripts/add_03600.bc
new file mode 100644
index 000000000000..eab41fd22f77
--- /dev/null
+++ b/tests/bc/scripts/add_03600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3501; i <= 3600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_03700.bc b/tests/bc/scripts/add_03700.bc
new file mode 100644
index 000000000000..40c7f6c9f72a
--- /dev/null
+++ b/tests/bc/scripts/add_03700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3601; i <= 3700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_03800.bc b/tests/bc/scripts/add_03800.bc
new file mode 100644
index 000000000000..9732ea39866b
--- /dev/null
+++ b/tests/bc/scripts/add_03800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3701; i <= 3800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_03900.bc b/tests/bc/scripts/add_03900.bc
new file mode 100644
index 000000000000..c4bb1e4f5023
--- /dev/null
+++ b/tests/bc/scripts/add_03900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3801; i <= 3900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_04000.bc b/tests/bc/scripts/add_04000.bc
new file mode 100644
index 000000000000..9f4c832d40a2
--- /dev/null
+++ b/tests/bc/scripts/add_04000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3901; i <= 4000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_04100.bc b/tests/bc/scripts/add_04100.bc
new file mode 100644
index 000000000000..a54f8711ad32
--- /dev/null
+++ b/tests/bc/scripts/add_04100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4001; i <= 4100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_04200.bc b/tests/bc/scripts/add_04200.bc
new file mode 100644
index 000000000000..f0d7f4ac2200
--- /dev/null
+++ b/tests/bc/scripts/add_04200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4101; i <= 4200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_04300.bc b/tests/bc/scripts/add_04300.bc
new file mode 100644
index 000000000000..6f1fd34d1d83
--- /dev/null
+++ b/tests/bc/scripts/add_04300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4201; i <= 4300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_04400.bc b/tests/bc/scripts/add_04400.bc
new file mode 100644
index 000000000000..d61ebb5cb850
--- /dev/null
+++ b/tests/bc/scripts/add_04400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4301; i <= 4400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_04500.bc b/tests/bc/scripts/add_04500.bc
new file mode 100644
index 000000000000..dec1d8d51a0a
--- /dev/null
+++ b/tests/bc/scripts/add_04500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4401; i <= 4500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_04600.bc b/tests/bc/scripts/add_04600.bc
new file mode 100644
index 000000000000..c11374d541c2
--- /dev/null
+++ b/tests/bc/scripts/add_04600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4501; i <= 4600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_04700.bc b/tests/bc/scripts/add_04700.bc
new file mode 100644
index 000000000000..f58c124a04b4
--- /dev/null
+++ b/tests/bc/scripts/add_04700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4601; i <= 4700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_04800.bc b/tests/bc/scripts/add_04800.bc
new file mode 100644
index 000000000000..a814317464d0
--- /dev/null
+++ b/tests/bc/scripts/add_04800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4701; i <= 4800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_04900.bc b/tests/bc/scripts/add_04900.bc
new file mode 100644
index 000000000000..e6c45fda681f
--- /dev/null
+++ b/tests/bc/scripts/add_04900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4801; i <= 4900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_05000.bc b/tests/bc/scripts/add_05000.bc
new file mode 100644
index 000000000000..b5f942c75b9c
--- /dev/null
+++ b/tests/bc/scripts/add_05000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4901; i <= 5000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_05100.bc b/tests/bc/scripts/add_05100.bc
new file mode 100644
index 000000000000..7b6db4cab7c7
--- /dev/null
+++ b/tests/bc/scripts/add_05100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5001; i <= 5100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_05200.bc b/tests/bc/scripts/add_05200.bc
new file mode 100644
index 000000000000..e00390c3a185
--- /dev/null
+++ b/tests/bc/scripts/add_05200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5101; i <= 5200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_05300.bc b/tests/bc/scripts/add_05300.bc
new file mode 100644
index 000000000000..bba349b19f58
--- /dev/null
+++ b/tests/bc/scripts/add_05300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5201; i <= 5300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_05400.bc b/tests/bc/scripts/add_05400.bc
new file mode 100644
index 000000000000..4d56e6444d22
--- /dev/null
+++ b/tests/bc/scripts/add_05400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5301; i <= 5400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_05500.bc b/tests/bc/scripts/add_05500.bc
new file mode 100644
index 000000000000..f44e5da24185
--- /dev/null
+++ b/tests/bc/scripts/add_05500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5401; i <= 5500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_05600.bc b/tests/bc/scripts/add_05600.bc
new file mode 100644
index 000000000000..7085cfb977a0
--- /dev/null
+++ b/tests/bc/scripts/add_05600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5501; i <= 5600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_05700.bc b/tests/bc/scripts/add_05700.bc
new file mode 100644
index 000000000000..3cb664410ce6
--- /dev/null
+++ b/tests/bc/scripts/add_05700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5601; i <= 5700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_05800.bc b/tests/bc/scripts/add_05800.bc
new file mode 100644
index 000000000000..2b2371a97dbc
--- /dev/null
+++ b/tests/bc/scripts/add_05800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5701; i <= 5800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_05900.bc b/tests/bc/scripts/add_05900.bc
new file mode 100644
index 000000000000..263c186e6e4a
--- /dev/null
+++ b/tests/bc/scripts/add_05900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5801; i <= 5900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_06000.bc b/tests/bc/scripts/add_06000.bc
new file mode 100644
index 000000000000..6a0c9adba929
--- /dev/null
+++ b/tests/bc/scripts/add_06000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5901; i <= 6000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_06100.bc b/tests/bc/scripts/add_06100.bc
new file mode 100644
index 000000000000..a39e08d837a5
--- /dev/null
+++ b/tests/bc/scripts/add_06100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6001; i <= 6100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_06200.bc b/tests/bc/scripts/add_06200.bc
new file mode 100644
index 000000000000..3c027b50e4c7
--- /dev/null
+++ b/tests/bc/scripts/add_06200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6101; i <= 6200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_06300.bc b/tests/bc/scripts/add_06300.bc
new file mode 100644
index 000000000000..0034dff383c4
--- /dev/null
+++ b/tests/bc/scripts/add_06300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6201; i <= 6300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_06400.bc b/tests/bc/scripts/add_06400.bc
new file mode 100644
index 000000000000..e76787fff84b
--- /dev/null
+++ b/tests/bc/scripts/add_06400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6301; i <= 6400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_06500.bc b/tests/bc/scripts/add_06500.bc
new file mode 100644
index 000000000000..219b0bfb1f21
--- /dev/null
+++ b/tests/bc/scripts/add_06500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6401; i <= 6500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_06600.bc b/tests/bc/scripts/add_06600.bc
new file mode 100644
index 000000000000..c881cdd331a5
--- /dev/null
+++ b/tests/bc/scripts/add_06600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6501; i <= 6600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_06700.bc b/tests/bc/scripts/add_06700.bc
new file mode 100644
index 000000000000..89578ced8323
--- /dev/null
+++ b/tests/bc/scripts/add_06700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6601; i <= 6700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_06800.bc b/tests/bc/scripts/add_06800.bc
new file mode 100644
index 000000000000..43808bbad6db
--- /dev/null
+++ b/tests/bc/scripts/add_06800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6701; i <= 6800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_06900.bc b/tests/bc/scripts/add_06900.bc
new file mode 100644
index 000000000000..aa3e232f95c3
--- /dev/null
+++ b/tests/bc/scripts/add_06900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6801; i <= 6900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_07000.bc b/tests/bc/scripts/add_07000.bc
new file mode 100644
index 000000000000..619efe0b1fbc
--- /dev/null
+++ b/tests/bc/scripts/add_07000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6901; i <= 7000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_07100.bc b/tests/bc/scripts/add_07100.bc
new file mode 100644
index 000000000000..7f62385972ba
--- /dev/null
+++ b/tests/bc/scripts/add_07100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7001; i <= 7100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_07200.bc b/tests/bc/scripts/add_07200.bc
new file mode 100644
index 000000000000..9275056c7b48
--- /dev/null
+++ b/tests/bc/scripts/add_07200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7101; i <= 7200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_07300.bc b/tests/bc/scripts/add_07300.bc
new file mode 100644
index 000000000000..aae0593d5453
--- /dev/null
+++ b/tests/bc/scripts/add_07300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7201; i <= 7300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_07400.bc b/tests/bc/scripts/add_07400.bc
new file mode 100644
index 000000000000..5ec925f71453
--- /dev/null
+++ b/tests/bc/scripts/add_07400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7301; i <= 7400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_07500.bc b/tests/bc/scripts/add_07500.bc
new file mode 100644
index 000000000000..79e3da3795ae
--- /dev/null
+++ b/tests/bc/scripts/add_07500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7401; i <= 7500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_07600.bc b/tests/bc/scripts/add_07600.bc
new file mode 100644
index 000000000000..0a6787de4f9a
--- /dev/null
+++ b/tests/bc/scripts/add_07600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7501; i <= 7600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_07700.bc b/tests/bc/scripts/add_07700.bc
new file mode 100644
index 000000000000..68a270cb2149
--- /dev/null
+++ b/tests/bc/scripts/add_07700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7601; i <= 7700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_07800.bc b/tests/bc/scripts/add_07800.bc
new file mode 100644
index 000000000000..266fb799877e
--- /dev/null
+++ b/tests/bc/scripts/add_07800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7701; i <= 7800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_07900.bc b/tests/bc/scripts/add_07900.bc
new file mode 100644
index 000000000000..34759324fbe9
--- /dev/null
+++ b/tests/bc/scripts/add_07900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7801; i <= 7900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_08000.bc b/tests/bc/scripts/add_08000.bc
new file mode 100644
index 000000000000..7194e35553bd
--- /dev/null
+++ b/tests/bc/scripts/add_08000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7901; i <= 8000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_08100.bc b/tests/bc/scripts/add_08100.bc
new file mode 100644
index 000000000000..899afff7c49f
--- /dev/null
+++ b/tests/bc/scripts/add_08100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8001; i <= 8100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_08200.bc b/tests/bc/scripts/add_08200.bc
new file mode 100644
index 000000000000..7898c65c3f39
--- /dev/null
+++ b/tests/bc/scripts/add_08200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8101; i <= 8200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_08300.bc b/tests/bc/scripts/add_08300.bc
new file mode 100644
index 000000000000..e524af4e6365
--- /dev/null
+++ b/tests/bc/scripts/add_08300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8201; i <= 8300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_08400.bc b/tests/bc/scripts/add_08400.bc
new file mode 100644
index 000000000000..e1835790b535
--- /dev/null
+++ b/tests/bc/scripts/add_08400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8301; i <= 8400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_08500.bc b/tests/bc/scripts/add_08500.bc
new file mode 100644
index 000000000000..33a1b69888fb
--- /dev/null
+++ b/tests/bc/scripts/add_08500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8401; i <= 8500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_08600.bc b/tests/bc/scripts/add_08600.bc
new file mode 100644
index 000000000000..a0a85ed50d2e
--- /dev/null
+++ b/tests/bc/scripts/add_08600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8501; i <= 8600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_08700.bc b/tests/bc/scripts/add_08700.bc
new file mode 100644
index 000000000000..cf453c39167c
--- /dev/null
+++ b/tests/bc/scripts/add_08700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8601; i <= 8700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_08800.bc b/tests/bc/scripts/add_08800.bc
new file mode 100644
index 000000000000..0714a10c14dd
--- /dev/null
+++ b/tests/bc/scripts/add_08800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8701; i <= 8800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_08900.bc b/tests/bc/scripts/add_08900.bc
new file mode 100644
index 000000000000..1cf95e2507f0
--- /dev/null
+++ b/tests/bc/scripts/add_08900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8801; i <= 8900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_09000.bc b/tests/bc/scripts/add_09000.bc
new file mode 100644
index 000000000000..3838cb3e90e0
--- /dev/null
+++ b/tests/bc/scripts/add_09000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8901; i <= 9000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_09100.bc b/tests/bc/scripts/add_09100.bc
new file mode 100644
index 000000000000..f5771ed8b8f9
--- /dev/null
+++ b/tests/bc/scripts/add_09100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9001; i <= 9100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_09200.bc b/tests/bc/scripts/add_09200.bc
new file mode 100644
index 000000000000..4f9e0638fdd7
--- /dev/null
+++ b/tests/bc/scripts/add_09200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9101; i <= 9200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_09300.bc b/tests/bc/scripts/add_09300.bc
new file mode 100644
index 000000000000..b4fc793980c6
--- /dev/null
+++ b/tests/bc/scripts/add_09300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9201; i <= 9300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_09400.bc b/tests/bc/scripts/add_09400.bc
new file mode 100644
index 000000000000..302f328b3c16
--- /dev/null
+++ b/tests/bc/scripts/add_09400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9301; i <= 9400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_09500.bc b/tests/bc/scripts/add_09500.bc
new file mode 100644
index 000000000000..a2fc67f64439
--- /dev/null
+++ b/tests/bc/scripts/add_09500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9401; i <= 9500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_09600.bc b/tests/bc/scripts/add_09600.bc
new file mode 100644
index 000000000000..0b36a67aeff6
--- /dev/null
+++ b/tests/bc/scripts/add_09600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9501; i <= 9600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_09700.bc b/tests/bc/scripts/add_09700.bc
new file mode 100644
index 000000000000..5f7c395c3a22
--- /dev/null
+++ b/tests/bc/scripts/add_09700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9601; i <= 9700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_09800.bc b/tests/bc/scripts/add_09800.bc
new file mode 100644
index 000000000000..23c044c7dbc9
--- /dev/null
+++ b/tests/bc/scripts/add_09800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9701; i <= 9800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_09900.bc b/tests/bc/scripts/add_09900.bc
new file mode 100644
index 000000000000..42d1a28d42b6
--- /dev/null
+++ b/tests/bc/scripts/add_09900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9801; i <= 9900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/add_10000.bc b/tests/bc/scripts/add_10000.bc
new file mode 100644
index 000000000000..518e937c48a3
--- /dev/null
+++ b/tests/bc/scripts/add_10000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9901; i <= 10000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] + a[j]
+ }
+}
diff --git a/tests/bc/scripts/all.txt b/tests/bc/scripts/all.txt
index 7b49f7c4e77a..935f05cf9fb2 100644
--- a/tests/bc/scripts/all.txt
+++ b/tests/bc/scripts/all.txt
@@ -1,10 +1,404 @@
-multiply.bc
-divide.bc
-subtract.bc
-add.bc
-print.bc
+multiply_00100.bc
+multiply_00200.bc
+multiply_00300.bc
+multiply_00400.bc
+multiply_00500.bc
+multiply_00600.bc
+multiply_00700.bc
+multiply_00800.bc
+multiply_00900.bc
+multiply_01000.bc
+multiply_01100.bc
+multiply_01200.bc
+multiply_01300.bc
+multiply_01400.bc
+multiply_01500.bc
+multiply_01600.bc
+multiply_01700.bc
+multiply_01800.bc
+multiply_01900.bc
+multiply_02000.bc
+multiply_02100.bc
+multiply_02200.bc
+multiply_02300.bc
+multiply_02400.bc
+multiply_02500.bc
+multiply_02600.bc
+multiply_02700.bc
+multiply_02800.bc
+multiply_02900.bc
+multiply_03000.bc
+multiply_03100.bc
+multiply_03200.bc
+multiply_03300.bc
+multiply_03400.bc
+multiply_03500.bc
+multiply_03600.bc
+multiply_03700.bc
+multiply_03800.bc
+multiply_03900.bc
+multiply_04000.bc
+multiply_04100.bc
+multiply_04200.bc
+multiply_04300.bc
+multiply_04400.bc
+multiply_04500.bc
+multiply_04600.bc
+multiply_04700.bc
+multiply_04800.bc
+multiply_04900.bc
+multiply_05000.bc
+multiply_05100.bc
+multiply_05200.bc
+multiply_05300.bc
+multiply_05400.bc
+multiply_05500.bc
+multiply_05600.bc
+multiply_05700.bc
+multiply_05800.bc
+multiply_05900.bc
+multiply_06000.bc
+multiply_06100.bc
+multiply_06200.bc
+multiply_06300.bc
+multiply_06400.bc
+multiply_06500.bc
+multiply_06600.bc
+multiply_06700.bc
+multiply_06800.bc
+multiply_06900.bc
+multiply_07000.bc
+multiply_07100.bc
+multiply_07200.bc
+multiply_07300.bc
+multiply_07400.bc
+multiply_07500.bc
+multiply_07600.bc
+multiply_07700.bc
+multiply_07800.bc
+multiply_07900.bc
+multiply_08000.bc
+multiply_08100.bc
+multiply_08200.bc
+multiply_08300.bc
+multiply_08400.bc
+multiply_08500.bc
+multiply_08600.bc
+multiply_08700.bc
+multiply_08800.bc
+multiply_08900.bc
+multiply_09000.bc
+multiply_09100.bc
+multiply_09200.bc
+multiply_09300.bc
+multiply_09400.bc
+multiply_09500.bc
+multiply_09600.bc
+multiply_09700.bc
+multiply_09800.bc
+multiply_09900.bc
+multiply_10000.bc
+divide_00100.bc
+divide_00200.bc
+divide_00300.bc
+divide_00400.bc
+divide_00500.bc
+divide_00600.bc
+divide_00700.bc
+divide_00800.bc
+divide_00900.bc
+divide_01000.bc
+divide_01100.bc
+divide_01200.bc
+divide_01300.bc
+divide_01400.bc
+divide_01500.bc
+divide_01600.bc
+divide_01700.bc
+divide_01800.bc
+divide_01900.bc
+divide_02000.bc
+divide_02100.bc
+divide_02200.bc
+divide_02300.bc
+divide_02400.bc
+divide_02500.bc
+divide_02600.bc
+divide_02700.bc
+divide_02800.bc
+divide_02900.bc
+divide_03000.bc
+divide_03100.bc
+divide_03200.bc
+divide_03300.bc
+divide_03400.bc
+divide_03500.bc
+divide_03600.bc
+divide_03700.bc
+divide_03800.bc
+divide_03900.bc
+divide_04000.bc
+divide_04100.bc
+divide_04200.bc
+divide_04300.bc
+divide_04400.bc
+divide_04500.bc
+divide_04600.bc
+divide_04700.bc
+divide_04800.bc
+divide_04900.bc
+divide_05000.bc
+divide_05100.bc
+divide_05200.bc
+divide_05300.bc
+divide_05400.bc
+divide_05500.bc
+divide_05600.bc
+divide_05700.bc
+divide_05800.bc
+divide_05900.bc
+divide_06000.bc
+divide_06100.bc
+divide_06200.bc
+divide_06300.bc
+divide_06400.bc
+divide_06500.bc
+divide_06600.bc
+divide_06700.bc
+divide_06800.bc
+divide_06900.bc
+divide_07000.bc
+divide_07100.bc
+divide_07200.bc
+divide_07300.bc
+divide_07400.bc
+divide_07500.bc
+divide_07600.bc
+divide_07700.bc
+divide_07800.bc
+divide_07900.bc
+divide_08000.bc
+divide_08100.bc
+divide_08200.bc
+divide_08300.bc
+divide_08400.bc
+divide_08500.bc
+divide_08600.bc
+divide_08700.bc
+divide_08800.bc
+divide_08900.bc
+divide_09000.bc
+divide_09100.bc
+divide_09200.bc
+divide_09300.bc
+divide_09400.bc
+divide_09500.bc
+divide_09600.bc
+divide_09700.bc
+divide_09800.bc
+divide_09900.bc
+divide_10000.bc
+subtract_00100.bc
+subtract_00200.bc
+subtract_00300.bc
+subtract_00400.bc
+subtract_00500.bc
+subtract_00600.bc
+subtract_00700.bc
+subtract_00800.bc
+subtract_00900.bc
+subtract_01000.bc
+subtract_01100.bc
+subtract_01200.bc
+subtract_01300.bc
+subtract_01400.bc
+subtract_01500.bc
+subtract_01600.bc
+subtract_01700.bc
+subtract_01800.bc
+subtract_01900.bc
+subtract_02000.bc
+subtract_02100.bc
+subtract_02200.bc
+subtract_02300.bc
+subtract_02400.bc
+subtract_02500.bc
+subtract_02600.bc
+subtract_02700.bc
+subtract_02800.bc
+subtract_02900.bc
+subtract_03000.bc
+subtract_03100.bc
+subtract_03200.bc
+subtract_03300.bc
+subtract_03400.bc
+subtract_03500.bc
+subtract_03600.bc
+subtract_03700.bc
+subtract_03800.bc
+subtract_03900.bc
+subtract_04000.bc
+subtract_04100.bc
+subtract_04200.bc
+subtract_04300.bc
+subtract_04400.bc
+subtract_04500.bc
+subtract_04600.bc
+subtract_04700.bc
+subtract_04800.bc
+subtract_04900.bc
+subtract_05000.bc
+subtract_05100.bc
+subtract_05200.bc
+subtract_05300.bc
+subtract_05400.bc
+subtract_05500.bc
+subtract_05600.bc
+subtract_05700.bc
+subtract_05800.bc
+subtract_05900.bc
+subtract_06000.bc
+subtract_06100.bc
+subtract_06200.bc
+subtract_06300.bc
+subtract_06400.bc
+subtract_06500.bc
+subtract_06600.bc
+subtract_06700.bc
+subtract_06800.bc
+subtract_06900.bc
+subtract_07000.bc
+subtract_07100.bc
+subtract_07200.bc
+subtract_07300.bc
+subtract_07400.bc
+subtract_07500.bc
+subtract_07600.bc
+subtract_07700.bc
+subtract_07800.bc
+subtract_07900.bc
+subtract_08000.bc
+subtract_08100.bc
+subtract_08200.bc
+subtract_08300.bc
+subtract_08400.bc
+subtract_08500.bc
+subtract_08600.bc
+subtract_08700.bc
+subtract_08800.bc
+subtract_08900.bc
+subtract_09000.bc
+subtract_09100.bc
+subtract_09200.bc
+subtract_09300.bc
+subtract_09400.bc
+subtract_09500.bc
+subtract_09600.bc
+subtract_09700.bc
+subtract_09800.bc
+subtract_09900.bc
+subtract_10000.bc
+add_00100.bc
+add_00200.bc
+add_00300.bc
+add_00400.bc
+add_00500.bc
+add_00600.bc
+add_00700.bc
+add_00800.bc
+add_00900.bc
+add_01000.bc
+add_01100.bc
+add_01200.bc
+add_01300.bc
+add_01400.bc
+add_01500.bc
+add_01600.bc
+add_01700.bc
+add_01800.bc
+add_01900.bc
+add_02000.bc
+add_02100.bc
+add_02200.bc
+add_02300.bc
+add_02400.bc
+add_02500.bc
+add_02600.bc
+add_02700.bc
+add_02800.bc
+add_02900.bc
+add_03000.bc
+add_03100.bc
+add_03200.bc
+add_03300.bc
+add_03400.bc
+add_03500.bc
+add_03600.bc
+add_03700.bc
+add_03800.bc
+add_03900.bc
+add_04000.bc
+add_04100.bc
+add_04200.bc
+add_04300.bc
+add_04400.bc
+add_04500.bc
+add_04600.bc
+add_04700.bc
+add_04800.bc
+add_04900.bc
+add_05000.bc
+add_05100.bc
+add_05200.bc
+add_05300.bc
+add_05400.bc
+add_05500.bc
+add_05600.bc
+add_05700.bc
+add_05800.bc
+add_05900.bc
+add_06000.bc
+add_06100.bc
+add_06200.bc
+add_06300.bc
+add_06400.bc
+add_06500.bc
+add_06600.bc
+add_06700.bc
+add_06800.bc
+add_06900.bc
+add_07000.bc
+add_07100.bc
+add_07200.bc
+add_07300.bc
+add_07400.bc
+add_07500.bc
+add_07600.bc
+add_07700.bc
+add_07800.bc
+add_07900.bc
+add_08000.bc
+add_08100.bc
+add_08200.bc
+add_08300.bc
+add_08400.bc
+add_08500.bc
+add_08600.bc
+add_08700.bc
+add_08800.bc
+add_08900.bc
+add_09000.bc
+add_09100.bc
+add_09200.bc
+add_09300.bc
+add_09400.bc
+add_09500.bc
+add_09600.bc
+add_09700.bc
+add_09800.bc
+add_09900.bc
+add_10000.bc
print2.bc
-parse.bc
root.bc
array.bc
array2.bc
diff --git a/tests/bc/scripts/divide.bc b/tests/bc/scripts/divide_00100.bc
index 51a4c0082d6a..d2685faf9cd3 100644
--- a/tests/bc/scripts/divide.bc
+++ b/tests/bc/scripts/divide_00100.bc
@@ -12,7 +12,7 @@ for (i = 0; i <= len; ++i) {
a[i]
}
-for (i = 1; i <= 10000; ++i) {
+for (i = 1; i <= 100; ++i) {
for (j = 0; j < len; ++j) {
a[0] / a[j]
a[i] / a[j]
diff --git a/tests/bc/scripts/divide_00200.bc b/tests/bc/scripts/divide_00200.bc
new file mode 100644
index 000000000000..027642c504d0
--- /dev/null
+++ b/tests/bc/scripts/divide_00200.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 101; i <= 200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_00300.bc b/tests/bc/scripts/divide_00300.bc
new file mode 100644
index 000000000000..53a3fb2e3d3a
--- /dev/null
+++ b/tests/bc/scripts/divide_00300.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 201; i <= 300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_00400.bc b/tests/bc/scripts/divide_00400.bc
new file mode 100644
index 000000000000..15f8ba961e61
--- /dev/null
+++ b/tests/bc/scripts/divide_00400.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 301; i <= 400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_00500.bc b/tests/bc/scripts/divide_00500.bc
new file mode 100644
index 000000000000..732bd2867a23
--- /dev/null
+++ b/tests/bc/scripts/divide_00500.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 401; i <= 500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_00600.bc b/tests/bc/scripts/divide_00600.bc
new file mode 100644
index 000000000000..4ac87e33319f
--- /dev/null
+++ b/tests/bc/scripts/divide_00600.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 501; i <= 600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_00700.bc b/tests/bc/scripts/divide_00700.bc
new file mode 100644
index 000000000000..0b272167f0fb
--- /dev/null
+++ b/tests/bc/scripts/divide_00700.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 601; i <= 700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_00800.bc b/tests/bc/scripts/divide_00800.bc
new file mode 100644
index 000000000000..0e08bb7016e3
--- /dev/null
+++ b/tests/bc/scripts/divide_00800.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 701; i <= 800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_00900.bc b/tests/bc/scripts/divide_00900.bc
new file mode 100644
index 000000000000..cef55f474661
--- /dev/null
+++ b/tests/bc/scripts/divide_00900.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 801; i <= 900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_01000.bc b/tests/bc/scripts/divide_01000.bc
new file mode 100644
index 000000000000..5291d71fc316
--- /dev/null
+++ b/tests/bc/scripts/divide_01000.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 901; i <= 1000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_01100.bc b/tests/bc/scripts/divide_01100.bc
new file mode 100644
index 000000000000..ff9a49a6bd9a
--- /dev/null
+++ b/tests/bc/scripts/divide_01100.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1001; i <= 1100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_01200.bc b/tests/bc/scripts/divide_01200.bc
new file mode 100644
index 000000000000..9dd0fadf3a4d
--- /dev/null
+++ b/tests/bc/scripts/divide_01200.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1101; i <= 1200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_01300.bc b/tests/bc/scripts/divide_01300.bc
new file mode 100644
index 000000000000..5ac02c35a087
--- /dev/null
+++ b/tests/bc/scripts/divide_01300.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1201; i <= 1300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_01400.bc b/tests/bc/scripts/divide_01400.bc
new file mode 100644
index 000000000000..9189a546b01c
--- /dev/null
+++ b/tests/bc/scripts/divide_01400.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1301; i <= 1400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_01500.bc b/tests/bc/scripts/divide_01500.bc
new file mode 100644
index 000000000000..7feed3c7389d
--- /dev/null
+++ b/tests/bc/scripts/divide_01500.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1401; i <= 1500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_01600.bc b/tests/bc/scripts/divide_01600.bc
new file mode 100644
index 000000000000..4847d9dbe62c
--- /dev/null
+++ b/tests/bc/scripts/divide_01600.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1501; i <= 1600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_01700.bc b/tests/bc/scripts/divide_01700.bc
new file mode 100644
index 000000000000..81db9b7b4bbe
--- /dev/null
+++ b/tests/bc/scripts/divide_01700.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1601; i <= 1700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_01800.bc b/tests/bc/scripts/divide_01800.bc
new file mode 100644
index 000000000000..25b7476e7d6e
--- /dev/null
+++ b/tests/bc/scripts/divide_01800.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1701; i <= 1800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_01900.bc b/tests/bc/scripts/divide_01900.bc
new file mode 100644
index 000000000000..80a8292c0b52
--- /dev/null
+++ b/tests/bc/scripts/divide_01900.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1801; i <= 1900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_02000.bc b/tests/bc/scripts/divide_02000.bc
new file mode 100644
index 000000000000..268f1636f65f
--- /dev/null
+++ b/tests/bc/scripts/divide_02000.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1901; i <= 2000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_02100.bc b/tests/bc/scripts/divide_02100.bc
new file mode 100644
index 000000000000..cd5f57546856
--- /dev/null
+++ b/tests/bc/scripts/divide_02100.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2001; i <= 2100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_02200.bc b/tests/bc/scripts/divide_02200.bc
new file mode 100644
index 000000000000..40eb46b58dc8
--- /dev/null
+++ b/tests/bc/scripts/divide_02200.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2101; i <= 2200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_02300.bc b/tests/bc/scripts/divide_02300.bc
new file mode 100644
index 000000000000..50da630cdeb1
--- /dev/null
+++ b/tests/bc/scripts/divide_02300.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2201; i <= 2300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_02400.bc b/tests/bc/scripts/divide_02400.bc
new file mode 100644
index 000000000000..744e082c95b5
--- /dev/null
+++ b/tests/bc/scripts/divide_02400.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2301; i <= 2400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_02500.bc b/tests/bc/scripts/divide_02500.bc
new file mode 100644
index 000000000000..294f2677971f
--- /dev/null
+++ b/tests/bc/scripts/divide_02500.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2401; i <= 2500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_02600.bc b/tests/bc/scripts/divide_02600.bc
new file mode 100644
index 000000000000..0adb8203d56b
--- /dev/null
+++ b/tests/bc/scripts/divide_02600.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2501; i <= 2600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_02700.bc b/tests/bc/scripts/divide_02700.bc
new file mode 100644
index 000000000000..7107d6674bcf
--- /dev/null
+++ b/tests/bc/scripts/divide_02700.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2601; i <= 2700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_02800.bc b/tests/bc/scripts/divide_02800.bc
new file mode 100644
index 000000000000..0a818c9461c6
--- /dev/null
+++ b/tests/bc/scripts/divide_02800.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2701; i <= 2800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_02900.bc b/tests/bc/scripts/divide_02900.bc
new file mode 100644
index 000000000000..8113032c261b
--- /dev/null
+++ b/tests/bc/scripts/divide_02900.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2801; i <= 2900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_03000.bc b/tests/bc/scripts/divide_03000.bc
new file mode 100644
index 000000000000..772d2e8cd2c3
--- /dev/null
+++ b/tests/bc/scripts/divide_03000.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2901; i <= 3000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_03100.bc b/tests/bc/scripts/divide_03100.bc
new file mode 100644
index 000000000000..916759661db5
--- /dev/null
+++ b/tests/bc/scripts/divide_03100.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3001; i <= 3100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_03200.bc b/tests/bc/scripts/divide_03200.bc
new file mode 100644
index 000000000000..52542b9b6dd1
--- /dev/null
+++ b/tests/bc/scripts/divide_03200.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3101; i <= 3200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_03300.bc b/tests/bc/scripts/divide_03300.bc
new file mode 100644
index 000000000000..d2315cf2ad43
--- /dev/null
+++ b/tests/bc/scripts/divide_03300.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3201; i <= 3300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_03400.bc b/tests/bc/scripts/divide_03400.bc
new file mode 100644
index 000000000000..03cf3e5c7d67
--- /dev/null
+++ b/tests/bc/scripts/divide_03400.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3301; i <= 3400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_03500.bc b/tests/bc/scripts/divide_03500.bc
new file mode 100644
index 000000000000..8fac5cc5bb82
--- /dev/null
+++ b/tests/bc/scripts/divide_03500.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3401; i <= 3500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_03600.bc b/tests/bc/scripts/divide_03600.bc
new file mode 100644
index 000000000000..a8a3af330a29
--- /dev/null
+++ b/tests/bc/scripts/divide_03600.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3501; i <= 3600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_03700.bc b/tests/bc/scripts/divide_03700.bc
new file mode 100644
index 000000000000..9f38b3e61350
--- /dev/null
+++ b/tests/bc/scripts/divide_03700.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3601; i <= 3700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_03800.bc b/tests/bc/scripts/divide_03800.bc
new file mode 100644
index 000000000000..db59cdd08602
--- /dev/null
+++ b/tests/bc/scripts/divide_03800.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3701; i <= 3800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_03900.bc b/tests/bc/scripts/divide_03900.bc
new file mode 100644
index 000000000000..d7de3afba717
--- /dev/null
+++ b/tests/bc/scripts/divide_03900.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3801; i <= 3900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_04000.bc b/tests/bc/scripts/divide_04000.bc
new file mode 100644
index 000000000000..86755a73ef5b
--- /dev/null
+++ b/tests/bc/scripts/divide_04000.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3901; i <= 4000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_04100.bc b/tests/bc/scripts/divide_04100.bc
new file mode 100644
index 000000000000..03156cd3a747
--- /dev/null
+++ b/tests/bc/scripts/divide_04100.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4001; i <= 4100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_04200.bc b/tests/bc/scripts/divide_04200.bc
new file mode 100644
index 000000000000..2df36aa73292
--- /dev/null
+++ b/tests/bc/scripts/divide_04200.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4101; i <= 4200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_04300.bc b/tests/bc/scripts/divide_04300.bc
new file mode 100644
index 000000000000..527cbb191fa3
--- /dev/null
+++ b/tests/bc/scripts/divide_04300.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4201; i <= 4300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_04400.bc b/tests/bc/scripts/divide_04400.bc
new file mode 100644
index 000000000000..358cf70a6a81
--- /dev/null
+++ b/tests/bc/scripts/divide_04400.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4301; i <= 4400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_04500.bc b/tests/bc/scripts/divide_04500.bc
new file mode 100644
index 000000000000..d298c5ba1801
--- /dev/null
+++ b/tests/bc/scripts/divide_04500.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4401; i <= 4500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_04600.bc b/tests/bc/scripts/divide_04600.bc
new file mode 100644
index 000000000000..b58a50a8c5a3
--- /dev/null
+++ b/tests/bc/scripts/divide_04600.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4501; i <= 4600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_04700.bc b/tests/bc/scripts/divide_04700.bc
new file mode 100644
index 000000000000..05a561bd145b
--- /dev/null
+++ b/tests/bc/scripts/divide_04700.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4601; i <= 4700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_04800.bc b/tests/bc/scripts/divide_04800.bc
new file mode 100644
index 000000000000..5ed04489a07f
--- /dev/null
+++ b/tests/bc/scripts/divide_04800.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4701; i <= 4800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_04900.bc b/tests/bc/scripts/divide_04900.bc
new file mode 100644
index 000000000000..ff3b46812838
--- /dev/null
+++ b/tests/bc/scripts/divide_04900.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4801; i <= 4900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_05000.bc b/tests/bc/scripts/divide_05000.bc
new file mode 100644
index 000000000000..a32273f5ac38
--- /dev/null
+++ b/tests/bc/scripts/divide_05000.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4901; i <= 5000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_05100.bc b/tests/bc/scripts/divide_05100.bc
new file mode 100644
index 000000000000..9b5aa7fcf72c
--- /dev/null
+++ b/tests/bc/scripts/divide_05100.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5001; i <= 5100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_05200.bc b/tests/bc/scripts/divide_05200.bc
new file mode 100644
index 000000000000..178dcac6ec5f
--- /dev/null
+++ b/tests/bc/scripts/divide_05200.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5101; i <= 5200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_05300.bc b/tests/bc/scripts/divide_05300.bc
new file mode 100644
index 000000000000..49768eca0511
--- /dev/null
+++ b/tests/bc/scripts/divide_05300.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5201; i <= 5300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_05400.bc b/tests/bc/scripts/divide_05400.bc
new file mode 100644
index 000000000000..c0078a2fac94
--- /dev/null
+++ b/tests/bc/scripts/divide_05400.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5301; i <= 5400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_05500.bc b/tests/bc/scripts/divide_05500.bc
new file mode 100644
index 000000000000..9d289e0f6a2e
--- /dev/null
+++ b/tests/bc/scripts/divide_05500.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5401; i <= 5500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_05600.bc b/tests/bc/scripts/divide_05600.bc
new file mode 100644
index 000000000000..66193069e42d
--- /dev/null
+++ b/tests/bc/scripts/divide_05600.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5501; i <= 5600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_05700.bc b/tests/bc/scripts/divide_05700.bc
new file mode 100644
index 000000000000..483622bfc219
--- /dev/null
+++ b/tests/bc/scripts/divide_05700.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5601; i <= 5700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_05800.bc b/tests/bc/scripts/divide_05800.bc
new file mode 100644
index 000000000000..c8bc59d63aaf
--- /dev/null
+++ b/tests/bc/scripts/divide_05800.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5701; i <= 5800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_05900.bc b/tests/bc/scripts/divide_05900.bc
new file mode 100644
index 000000000000..13e5a0f2209b
--- /dev/null
+++ b/tests/bc/scripts/divide_05900.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5801; i <= 5900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_06000.bc b/tests/bc/scripts/divide_06000.bc
new file mode 100644
index 000000000000..318fc5b25f5f
--- /dev/null
+++ b/tests/bc/scripts/divide_06000.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5901; i <= 6000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_06100.bc b/tests/bc/scripts/divide_06100.bc
new file mode 100644
index 000000000000..57bf61d4730f
--- /dev/null
+++ b/tests/bc/scripts/divide_06100.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6001; i <= 6100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_06200.bc b/tests/bc/scripts/divide_06200.bc
new file mode 100644
index 000000000000..ab1ac853431e
--- /dev/null
+++ b/tests/bc/scripts/divide_06200.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6101; i <= 6200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_06300.bc b/tests/bc/scripts/divide_06300.bc
new file mode 100644
index 000000000000..e2a320b0abd2
--- /dev/null
+++ b/tests/bc/scripts/divide_06300.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6201; i <= 6300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_06400.bc b/tests/bc/scripts/divide_06400.bc
new file mode 100644
index 000000000000..f3e0557b7e8b
--- /dev/null
+++ b/tests/bc/scripts/divide_06400.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6301; i <= 6400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_06500.bc b/tests/bc/scripts/divide_06500.bc
new file mode 100644
index 000000000000..62c84d07f3cd
--- /dev/null
+++ b/tests/bc/scripts/divide_06500.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6401; i <= 6500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_06600.bc b/tests/bc/scripts/divide_06600.bc
new file mode 100644
index 000000000000..04e1d9dcdf07
--- /dev/null
+++ b/tests/bc/scripts/divide_06600.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6501; i <= 6600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_06700.bc b/tests/bc/scripts/divide_06700.bc
new file mode 100644
index 000000000000..af23039798d9
--- /dev/null
+++ b/tests/bc/scripts/divide_06700.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6601; i <= 6700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_06800.bc b/tests/bc/scripts/divide_06800.bc
new file mode 100644
index 000000000000..6da3f2da386b
--- /dev/null
+++ b/tests/bc/scripts/divide_06800.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6701; i <= 6800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_06900.bc b/tests/bc/scripts/divide_06900.bc
new file mode 100644
index 000000000000..769d57fb1656
--- /dev/null
+++ b/tests/bc/scripts/divide_06900.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6801; i <= 6900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_07000.bc b/tests/bc/scripts/divide_07000.bc
new file mode 100644
index 000000000000..758b61fb99ec
--- /dev/null
+++ b/tests/bc/scripts/divide_07000.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6901; i <= 7000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_07100.bc b/tests/bc/scripts/divide_07100.bc
new file mode 100644
index 000000000000..2ef9f19390b8
--- /dev/null
+++ b/tests/bc/scripts/divide_07100.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7001; i <= 7100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_07200.bc b/tests/bc/scripts/divide_07200.bc
new file mode 100644
index 000000000000..dcab8948d540
--- /dev/null
+++ b/tests/bc/scripts/divide_07200.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7101; i <= 7200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_07300.bc b/tests/bc/scripts/divide_07300.bc
new file mode 100644
index 000000000000..f8aeae59b336
--- /dev/null
+++ b/tests/bc/scripts/divide_07300.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7201; i <= 7300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_07400.bc b/tests/bc/scripts/divide_07400.bc
new file mode 100644
index 000000000000..7a26ce5583fc
--- /dev/null
+++ b/tests/bc/scripts/divide_07400.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7301; i <= 7400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_07500.bc b/tests/bc/scripts/divide_07500.bc
new file mode 100644
index 000000000000..0c197595ae9f
--- /dev/null
+++ b/tests/bc/scripts/divide_07500.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7401; i <= 7500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_07600.bc b/tests/bc/scripts/divide_07600.bc
new file mode 100644
index 000000000000..868d0702f3db
--- /dev/null
+++ b/tests/bc/scripts/divide_07600.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7501; i <= 7600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_07700.bc b/tests/bc/scripts/divide_07700.bc
new file mode 100644
index 000000000000..b30f66ebb5b8
--- /dev/null
+++ b/tests/bc/scripts/divide_07700.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7601; i <= 7700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_07800.bc b/tests/bc/scripts/divide_07800.bc
new file mode 100644
index 000000000000..118df8fe112d
--- /dev/null
+++ b/tests/bc/scripts/divide_07800.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7701; i <= 7800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_07900.bc b/tests/bc/scripts/divide_07900.bc
new file mode 100644
index 000000000000..42fd0771dca6
--- /dev/null
+++ b/tests/bc/scripts/divide_07900.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7801; i <= 7900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_08000.bc b/tests/bc/scripts/divide_08000.bc
new file mode 100644
index 000000000000..3bdaa26e707e
--- /dev/null
+++ b/tests/bc/scripts/divide_08000.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7901; i <= 8000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_08100.bc b/tests/bc/scripts/divide_08100.bc
new file mode 100644
index 000000000000..f0e4592382b2
--- /dev/null
+++ b/tests/bc/scripts/divide_08100.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8001; i <= 8100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_08200.bc b/tests/bc/scripts/divide_08200.bc
new file mode 100644
index 000000000000..ef1bb329cff1
--- /dev/null
+++ b/tests/bc/scripts/divide_08200.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8101; i <= 8200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_08300.bc b/tests/bc/scripts/divide_08300.bc
new file mode 100644
index 000000000000..f3fe8a69eeda
--- /dev/null
+++ b/tests/bc/scripts/divide_08300.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8201; i <= 8300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_08400.bc b/tests/bc/scripts/divide_08400.bc
new file mode 100644
index 000000000000..5c9ec5c8fba2
--- /dev/null
+++ b/tests/bc/scripts/divide_08400.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8301; i <= 8400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_08500.bc b/tests/bc/scripts/divide_08500.bc
new file mode 100644
index 000000000000..64059da94286
--- /dev/null
+++ b/tests/bc/scripts/divide_08500.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8401; i <= 8500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_08600.bc b/tests/bc/scripts/divide_08600.bc
new file mode 100644
index 000000000000..72fe4114998b
--- /dev/null
+++ b/tests/bc/scripts/divide_08600.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8501; i <= 8600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_08700.bc b/tests/bc/scripts/divide_08700.bc
new file mode 100644
index 000000000000..c1927841a49f
--- /dev/null
+++ b/tests/bc/scripts/divide_08700.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8601; i <= 8700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_08800.bc b/tests/bc/scripts/divide_08800.bc
new file mode 100644
index 000000000000..4ae7fcab3dcd
--- /dev/null
+++ b/tests/bc/scripts/divide_08800.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8701; i <= 8800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_08900.bc b/tests/bc/scripts/divide_08900.bc
new file mode 100644
index 000000000000..7e59baa4a150
--- /dev/null
+++ b/tests/bc/scripts/divide_08900.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8801; i <= 8900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_09000.bc b/tests/bc/scripts/divide_09000.bc
new file mode 100644
index 000000000000..26d3f62ac6a1
--- /dev/null
+++ b/tests/bc/scripts/divide_09000.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8901; i <= 9000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_09100.bc b/tests/bc/scripts/divide_09100.bc
new file mode 100644
index 000000000000..e8a372db80e2
--- /dev/null
+++ b/tests/bc/scripts/divide_09100.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9001; i <= 9100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_09200.bc b/tests/bc/scripts/divide_09200.bc
new file mode 100644
index 000000000000..00d391459a46
--- /dev/null
+++ b/tests/bc/scripts/divide_09200.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9101; i <= 9200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_09300.bc b/tests/bc/scripts/divide_09300.bc
new file mode 100644
index 000000000000..4a64b9347192
--- /dev/null
+++ b/tests/bc/scripts/divide_09300.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9201; i <= 9300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_09400.bc b/tests/bc/scripts/divide_09400.bc
new file mode 100644
index 000000000000..55a70f7cbf41
--- /dev/null
+++ b/tests/bc/scripts/divide_09400.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9301; i <= 9400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_09500.bc b/tests/bc/scripts/divide_09500.bc
new file mode 100644
index 000000000000..09df2d540454
--- /dev/null
+++ b/tests/bc/scripts/divide_09500.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9401; i <= 9500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_09600.bc b/tests/bc/scripts/divide_09600.bc
new file mode 100644
index 000000000000..491e3c2caa33
--- /dev/null
+++ b/tests/bc/scripts/divide_09600.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9501; i <= 9600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_09700.bc b/tests/bc/scripts/divide_09700.bc
new file mode 100644
index 000000000000..33a183e2493e
--- /dev/null
+++ b/tests/bc/scripts/divide_09700.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9601; i <= 9700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_09800.bc b/tests/bc/scripts/divide_09800.bc
new file mode 100644
index 000000000000..ae007e8a7a00
--- /dev/null
+++ b/tests/bc/scripts/divide_09800.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9701; i <= 9800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_09900.bc b/tests/bc/scripts/divide_09900.bc
new file mode 100644
index 000000000000..e8fdc75987b6
--- /dev/null
+++ b/tests/bc/scripts/divide_09900.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9801; i <= 9900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/divide_10000.bc b/tests/bc/scripts/divide_10000.bc
new file mode 100644
index 000000000000..f4490d7d220d
--- /dev/null
+++ b/tests/bc/scripts/divide_10000.bc
@@ -0,0 +1,23 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 * 10^(-scale)
+len = 1 + 2 * scale
+
+x
+scale += 10
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9901; i <= 10000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] / a[j]
+ a[i] / a[j]
+ (a[0] * i) / a[j]
+ a[0] / (a[j] * i)
+ (a[0] * i) / (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply.bc b/tests/bc/scripts/multiply_00100.bc
index 3aa64cc5e031..bc979d176c2a 100644
--- a/tests/bc/scripts/multiply.bc
+++ b/tests/bc/scripts/multiply_00100.bc
@@ -9,7 +9,7 @@ for (i = 0; i <= len; ++i) {
a[i]
}
-for (i = 1; i <= 10000; ++i) {
+for (i = 1; i <= 100; ++i) {
for (j = 0; j < len; ++j) {
a[0] * a[j]
a[i] * a[j]
diff --git a/tests/bc/scripts/multiply_00200.bc b/tests/bc/scripts/multiply_00200.bc
new file mode 100644
index 000000000000..08c36d5dd4b3
--- /dev/null
+++ b/tests/bc/scripts/multiply_00200.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 101; i <= 200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_00300.bc b/tests/bc/scripts/multiply_00300.bc
new file mode 100644
index 000000000000..3c56a569d2ee
--- /dev/null
+++ b/tests/bc/scripts/multiply_00300.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 201; i <= 300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_00400.bc b/tests/bc/scripts/multiply_00400.bc
new file mode 100644
index 000000000000..3dc750947aee
--- /dev/null
+++ b/tests/bc/scripts/multiply_00400.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 301; i <= 400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_00500.bc b/tests/bc/scripts/multiply_00500.bc
new file mode 100644
index 000000000000..a1f14e121cbb
--- /dev/null
+++ b/tests/bc/scripts/multiply_00500.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 401; i <= 500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_00600.bc b/tests/bc/scripts/multiply_00600.bc
new file mode 100644
index 000000000000..21a017a7f7cb
--- /dev/null
+++ b/tests/bc/scripts/multiply_00600.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 501; i <= 600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_00700.bc b/tests/bc/scripts/multiply_00700.bc
new file mode 100644
index 000000000000..3246b5e1a568
--- /dev/null
+++ b/tests/bc/scripts/multiply_00700.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 601; i <= 700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_00800.bc b/tests/bc/scripts/multiply_00800.bc
new file mode 100644
index 000000000000..4bc39b0a1fef
--- /dev/null
+++ b/tests/bc/scripts/multiply_00800.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 701; i <= 800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_00900.bc b/tests/bc/scripts/multiply_00900.bc
new file mode 100644
index 000000000000..febc77dead15
--- /dev/null
+++ b/tests/bc/scripts/multiply_00900.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 801; i <= 900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_01000.bc b/tests/bc/scripts/multiply_01000.bc
new file mode 100644
index 000000000000..ba5c1d984f67
--- /dev/null
+++ b/tests/bc/scripts/multiply_01000.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 901; i <= 1000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_01100.bc b/tests/bc/scripts/multiply_01100.bc
new file mode 100644
index 000000000000..a09c35252286
--- /dev/null
+++ b/tests/bc/scripts/multiply_01100.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1001; i <= 1100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_01200.bc b/tests/bc/scripts/multiply_01200.bc
new file mode 100644
index 000000000000..7a6b04c48b9e
--- /dev/null
+++ b/tests/bc/scripts/multiply_01200.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1101; i <= 1200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_01300.bc b/tests/bc/scripts/multiply_01300.bc
new file mode 100644
index 000000000000..4fab6beb0a62
--- /dev/null
+++ b/tests/bc/scripts/multiply_01300.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1201; i <= 1300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_01400.bc b/tests/bc/scripts/multiply_01400.bc
new file mode 100644
index 000000000000..954afe5473de
--- /dev/null
+++ b/tests/bc/scripts/multiply_01400.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1301; i <= 1400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_01500.bc b/tests/bc/scripts/multiply_01500.bc
new file mode 100644
index 000000000000..8d150418618a
--- /dev/null
+++ b/tests/bc/scripts/multiply_01500.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1401; i <= 1500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_01600.bc b/tests/bc/scripts/multiply_01600.bc
new file mode 100644
index 000000000000..45f170705f99
--- /dev/null
+++ b/tests/bc/scripts/multiply_01600.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1501; i <= 1600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_01700.bc b/tests/bc/scripts/multiply_01700.bc
new file mode 100644
index 000000000000..7eb34740139e
--- /dev/null
+++ b/tests/bc/scripts/multiply_01700.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1601; i <= 1700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_01800.bc b/tests/bc/scripts/multiply_01800.bc
new file mode 100644
index 000000000000..719db5b358a2
--- /dev/null
+++ b/tests/bc/scripts/multiply_01800.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1701; i <= 1800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_01900.bc b/tests/bc/scripts/multiply_01900.bc
new file mode 100644
index 000000000000..4a4a6c8b43c6
--- /dev/null
+++ b/tests/bc/scripts/multiply_01900.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1801; i <= 1900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_02000.bc b/tests/bc/scripts/multiply_02000.bc
new file mode 100644
index 000000000000..432e0d078dee
--- /dev/null
+++ b/tests/bc/scripts/multiply_02000.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1901; i <= 2000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_02100.bc b/tests/bc/scripts/multiply_02100.bc
new file mode 100644
index 000000000000..825b96a7c0d3
--- /dev/null
+++ b/tests/bc/scripts/multiply_02100.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2001; i <= 2100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_02200.bc b/tests/bc/scripts/multiply_02200.bc
new file mode 100644
index 000000000000..fd3d71684054
--- /dev/null
+++ b/tests/bc/scripts/multiply_02200.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2101; i <= 2200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_02300.bc b/tests/bc/scripts/multiply_02300.bc
new file mode 100644
index 000000000000..1e2adbe81fc0
--- /dev/null
+++ b/tests/bc/scripts/multiply_02300.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2201; i <= 2300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_02400.bc b/tests/bc/scripts/multiply_02400.bc
new file mode 100644
index 000000000000..6f648ae5eb9d
--- /dev/null
+++ b/tests/bc/scripts/multiply_02400.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2301; i <= 2400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_02500.bc b/tests/bc/scripts/multiply_02500.bc
new file mode 100644
index 000000000000..6990fa78af64
--- /dev/null
+++ b/tests/bc/scripts/multiply_02500.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2401; i <= 2500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_02600.bc b/tests/bc/scripts/multiply_02600.bc
new file mode 100644
index 000000000000..22d0eca373c9
--- /dev/null
+++ b/tests/bc/scripts/multiply_02600.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2501; i <= 2600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_02700.bc b/tests/bc/scripts/multiply_02700.bc
new file mode 100644
index 000000000000..ea8d632288ec
--- /dev/null
+++ b/tests/bc/scripts/multiply_02700.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2601; i <= 2700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_02800.bc b/tests/bc/scripts/multiply_02800.bc
new file mode 100644
index 000000000000..5cd01d5012c0
--- /dev/null
+++ b/tests/bc/scripts/multiply_02800.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2701; i <= 2800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_02900.bc b/tests/bc/scripts/multiply_02900.bc
new file mode 100644
index 000000000000..cdb1cb1e43c9
--- /dev/null
+++ b/tests/bc/scripts/multiply_02900.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2801; i <= 2900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_03000.bc b/tests/bc/scripts/multiply_03000.bc
new file mode 100644
index 000000000000..1afcd634ade1
--- /dev/null
+++ b/tests/bc/scripts/multiply_03000.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2901; i <= 3000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_03100.bc b/tests/bc/scripts/multiply_03100.bc
new file mode 100644
index 000000000000..a39ef85bdfc5
--- /dev/null
+++ b/tests/bc/scripts/multiply_03100.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3001; i <= 3100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_03200.bc b/tests/bc/scripts/multiply_03200.bc
new file mode 100644
index 000000000000..33f465a82bf6
--- /dev/null
+++ b/tests/bc/scripts/multiply_03200.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3101; i <= 3200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_03300.bc b/tests/bc/scripts/multiply_03300.bc
new file mode 100644
index 000000000000..2cc412b5837f
--- /dev/null
+++ b/tests/bc/scripts/multiply_03300.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3201; i <= 3300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_03400.bc b/tests/bc/scripts/multiply_03400.bc
new file mode 100644
index 000000000000..40f528023e17
--- /dev/null
+++ b/tests/bc/scripts/multiply_03400.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3301; i <= 3400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_03500.bc b/tests/bc/scripts/multiply_03500.bc
new file mode 100644
index 000000000000..dce2f326a54a
--- /dev/null
+++ b/tests/bc/scripts/multiply_03500.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3401; i <= 3500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_03600.bc b/tests/bc/scripts/multiply_03600.bc
new file mode 100644
index 000000000000..1223415dc675
--- /dev/null
+++ b/tests/bc/scripts/multiply_03600.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3501; i <= 3600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_03700.bc b/tests/bc/scripts/multiply_03700.bc
new file mode 100644
index 000000000000..80397b3d0cfd
--- /dev/null
+++ b/tests/bc/scripts/multiply_03700.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3601; i <= 3700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_03800.bc b/tests/bc/scripts/multiply_03800.bc
new file mode 100644
index 000000000000..0431d8b1c9d5
--- /dev/null
+++ b/tests/bc/scripts/multiply_03800.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3701; i <= 3800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_03900.bc b/tests/bc/scripts/multiply_03900.bc
new file mode 100644
index 000000000000..0f60df9aae71
--- /dev/null
+++ b/tests/bc/scripts/multiply_03900.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3801; i <= 3900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_04000.bc b/tests/bc/scripts/multiply_04000.bc
new file mode 100644
index 000000000000..ceeafea6975c
--- /dev/null
+++ b/tests/bc/scripts/multiply_04000.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3901; i <= 4000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_04100.bc b/tests/bc/scripts/multiply_04100.bc
new file mode 100644
index 000000000000..980fa7cb1c7e
--- /dev/null
+++ b/tests/bc/scripts/multiply_04100.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4001; i <= 4100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_04200.bc b/tests/bc/scripts/multiply_04200.bc
new file mode 100644
index 000000000000..1b16065ce434
--- /dev/null
+++ b/tests/bc/scripts/multiply_04200.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4101; i <= 4200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_04300.bc b/tests/bc/scripts/multiply_04300.bc
new file mode 100644
index 000000000000..ae2549f392b6
--- /dev/null
+++ b/tests/bc/scripts/multiply_04300.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4201; i <= 4300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_04400.bc b/tests/bc/scripts/multiply_04400.bc
new file mode 100644
index 000000000000..0b22a8b36cca
--- /dev/null
+++ b/tests/bc/scripts/multiply_04400.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4301; i <= 4400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_04500.bc b/tests/bc/scripts/multiply_04500.bc
new file mode 100644
index 000000000000..374b595501f4
--- /dev/null
+++ b/tests/bc/scripts/multiply_04500.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4401; i <= 4500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_04600.bc b/tests/bc/scripts/multiply_04600.bc
new file mode 100644
index 000000000000..f4e0150e100b
--- /dev/null
+++ b/tests/bc/scripts/multiply_04600.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4501; i <= 4600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_04700.bc b/tests/bc/scripts/multiply_04700.bc
new file mode 100644
index 000000000000..351cf2ae3bd7
--- /dev/null
+++ b/tests/bc/scripts/multiply_04700.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4601; i <= 4700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_04800.bc b/tests/bc/scripts/multiply_04800.bc
new file mode 100644
index 000000000000..75bab62c7467
--- /dev/null
+++ b/tests/bc/scripts/multiply_04800.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4701; i <= 4800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_04900.bc b/tests/bc/scripts/multiply_04900.bc
new file mode 100644
index 000000000000..bb127c4e685d
--- /dev/null
+++ b/tests/bc/scripts/multiply_04900.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4801; i <= 4900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_05000.bc b/tests/bc/scripts/multiply_05000.bc
new file mode 100644
index 000000000000..2b817f2e4f31
--- /dev/null
+++ b/tests/bc/scripts/multiply_05000.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4901; i <= 5000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_05100.bc b/tests/bc/scripts/multiply_05100.bc
new file mode 100644
index 000000000000..a5067e8d60e6
--- /dev/null
+++ b/tests/bc/scripts/multiply_05100.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5001; i <= 5100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_05200.bc b/tests/bc/scripts/multiply_05200.bc
new file mode 100644
index 000000000000..4cecc2212520
--- /dev/null
+++ b/tests/bc/scripts/multiply_05200.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5101; i <= 5200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_05300.bc b/tests/bc/scripts/multiply_05300.bc
new file mode 100644
index 000000000000..03c475b3de26
--- /dev/null
+++ b/tests/bc/scripts/multiply_05300.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5201; i <= 5300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_05400.bc b/tests/bc/scripts/multiply_05400.bc
new file mode 100644
index 000000000000..5bfeb9c4f048
--- /dev/null
+++ b/tests/bc/scripts/multiply_05400.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5301; i <= 5400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_05500.bc b/tests/bc/scripts/multiply_05500.bc
new file mode 100644
index 000000000000..1e12f9233a30
--- /dev/null
+++ b/tests/bc/scripts/multiply_05500.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5401; i <= 5500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_05600.bc b/tests/bc/scripts/multiply_05600.bc
new file mode 100644
index 000000000000..25a60e2d25a1
--- /dev/null
+++ b/tests/bc/scripts/multiply_05600.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5501; i <= 5600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_05700.bc b/tests/bc/scripts/multiply_05700.bc
new file mode 100644
index 000000000000..c824af19bacd
--- /dev/null
+++ b/tests/bc/scripts/multiply_05700.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5601; i <= 5700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_05800.bc b/tests/bc/scripts/multiply_05800.bc
new file mode 100644
index 000000000000..a7eedc9fb733
--- /dev/null
+++ b/tests/bc/scripts/multiply_05800.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5701; i <= 5800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_05900.bc b/tests/bc/scripts/multiply_05900.bc
new file mode 100644
index 000000000000..9bd0f7044428
--- /dev/null
+++ b/tests/bc/scripts/multiply_05900.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5801; i <= 5900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_06000.bc b/tests/bc/scripts/multiply_06000.bc
new file mode 100644
index 000000000000..6353c74cbf73
--- /dev/null
+++ b/tests/bc/scripts/multiply_06000.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5901; i <= 6000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_06100.bc b/tests/bc/scripts/multiply_06100.bc
new file mode 100644
index 000000000000..d49224821a06
--- /dev/null
+++ b/tests/bc/scripts/multiply_06100.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6001; i <= 6100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_06200.bc b/tests/bc/scripts/multiply_06200.bc
new file mode 100644
index 000000000000..c4483f401a2c
--- /dev/null
+++ b/tests/bc/scripts/multiply_06200.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6101; i <= 6200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_06300.bc b/tests/bc/scripts/multiply_06300.bc
new file mode 100644
index 000000000000..c86e62d3a87f
--- /dev/null
+++ b/tests/bc/scripts/multiply_06300.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6201; i <= 6300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_06400.bc b/tests/bc/scripts/multiply_06400.bc
new file mode 100644
index 000000000000..0140f164f1ac
--- /dev/null
+++ b/tests/bc/scripts/multiply_06400.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6301; i <= 6400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_06500.bc b/tests/bc/scripts/multiply_06500.bc
new file mode 100644
index 000000000000..e9ee4fe5a896
--- /dev/null
+++ b/tests/bc/scripts/multiply_06500.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6401; i <= 6500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_06600.bc b/tests/bc/scripts/multiply_06600.bc
new file mode 100644
index 000000000000..267dcbf8aa6b
--- /dev/null
+++ b/tests/bc/scripts/multiply_06600.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6501; i <= 6600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_06700.bc b/tests/bc/scripts/multiply_06700.bc
new file mode 100644
index 000000000000..851c771952e1
--- /dev/null
+++ b/tests/bc/scripts/multiply_06700.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6601; i <= 6700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_06800.bc b/tests/bc/scripts/multiply_06800.bc
new file mode 100644
index 000000000000..d2141d7c065c
--- /dev/null
+++ b/tests/bc/scripts/multiply_06800.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6701; i <= 6800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_06900.bc b/tests/bc/scripts/multiply_06900.bc
new file mode 100644
index 000000000000..5a9e9affde94
--- /dev/null
+++ b/tests/bc/scripts/multiply_06900.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6801; i <= 6900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_07000.bc b/tests/bc/scripts/multiply_07000.bc
new file mode 100644
index 000000000000..549a1df72211
--- /dev/null
+++ b/tests/bc/scripts/multiply_07000.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6901; i <= 7000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_07100.bc b/tests/bc/scripts/multiply_07100.bc
new file mode 100644
index 000000000000..0a664833487d
--- /dev/null
+++ b/tests/bc/scripts/multiply_07100.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7001; i <= 7100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_07200.bc b/tests/bc/scripts/multiply_07200.bc
new file mode 100644
index 000000000000..913f053eab19
--- /dev/null
+++ b/tests/bc/scripts/multiply_07200.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7101; i <= 7200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_07300.bc b/tests/bc/scripts/multiply_07300.bc
new file mode 100644
index 000000000000..50643873d43f
--- /dev/null
+++ b/tests/bc/scripts/multiply_07300.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7201; i <= 7300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_07400.bc b/tests/bc/scripts/multiply_07400.bc
new file mode 100644
index 000000000000..8c401f0da1dd
--- /dev/null
+++ b/tests/bc/scripts/multiply_07400.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7301; i <= 7400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_07500.bc b/tests/bc/scripts/multiply_07500.bc
new file mode 100644
index 000000000000..fedd47a45d45
--- /dev/null
+++ b/tests/bc/scripts/multiply_07500.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7401; i <= 7500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_07600.bc b/tests/bc/scripts/multiply_07600.bc
new file mode 100644
index 000000000000..b1b5727d0314
--- /dev/null
+++ b/tests/bc/scripts/multiply_07600.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7501; i <= 7600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_07700.bc b/tests/bc/scripts/multiply_07700.bc
new file mode 100644
index 000000000000..40531a676a12
--- /dev/null
+++ b/tests/bc/scripts/multiply_07700.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7601; i <= 7700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_07800.bc b/tests/bc/scripts/multiply_07800.bc
new file mode 100644
index 000000000000..dd847d26911d
--- /dev/null
+++ b/tests/bc/scripts/multiply_07800.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7701; i <= 7800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_07900.bc b/tests/bc/scripts/multiply_07900.bc
new file mode 100644
index 000000000000..8313633df2f9
--- /dev/null
+++ b/tests/bc/scripts/multiply_07900.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7801; i <= 7900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_08000.bc b/tests/bc/scripts/multiply_08000.bc
new file mode 100644
index 000000000000..e496cf78b42c
--- /dev/null
+++ b/tests/bc/scripts/multiply_08000.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7901; i <= 8000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_08100.bc b/tests/bc/scripts/multiply_08100.bc
new file mode 100644
index 000000000000..7f07ce4e3525
--- /dev/null
+++ b/tests/bc/scripts/multiply_08100.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8001; i <= 8100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_08200.bc b/tests/bc/scripts/multiply_08200.bc
new file mode 100644
index 000000000000..0916404d35d4
--- /dev/null
+++ b/tests/bc/scripts/multiply_08200.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8101; i <= 8200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_08300.bc b/tests/bc/scripts/multiply_08300.bc
new file mode 100644
index 000000000000..9de6c4997520
--- /dev/null
+++ b/tests/bc/scripts/multiply_08300.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8201; i <= 8300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_08400.bc b/tests/bc/scripts/multiply_08400.bc
new file mode 100644
index 000000000000..429bd41bd843
--- /dev/null
+++ b/tests/bc/scripts/multiply_08400.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8301; i <= 8400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_08500.bc b/tests/bc/scripts/multiply_08500.bc
new file mode 100644
index 000000000000..c84c3fb66c6e
--- /dev/null
+++ b/tests/bc/scripts/multiply_08500.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8401; i <= 8500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_08600.bc b/tests/bc/scripts/multiply_08600.bc
new file mode 100644
index 000000000000..30492744af01
--- /dev/null
+++ b/tests/bc/scripts/multiply_08600.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8501; i <= 8600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_08700.bc b/tests/bc/scripts/multiply_08700.bc
new file mode 100644
index 000000000000..06cc0e094cf5
--- /dev/null
+++ b/tests/bc/scripts/multiply_08700.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8601; i <= 8700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_08800.bc b/tests/bc/scripts/multiply_08800.bc
new file mode 100644
index 000000000000..9ae52a604a04
--- /dev/null
+++ b/tests/bc/scripts/multiply_08800.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8701; i <= 8800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_08900.bc b/tests/bc/scripts/multiply_08900.bc
new file mode 100644
index 000000000000..b1a1ccfa2dc1
--- /dev/null
+++ b/tests/bc/scripts/multiply_08900.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8801; i <= 8900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_09000.bc b/tests/bc/scripts/multiply_09000.bc
new file mode 100644
index 000000000000..487cb5a678bc
--- /dev/null
+++ b/tests/bc/scripts/multiply_09000.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8901; i <= 9000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_09100.bc b/tests/bc/scripts/multiply_09100.bc
new file mode 100644
index 000000000000..1c187475a5ed
--- /dev/null
+++ b/tests/bc/scripts/multiply_09100.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9001; i <= 9100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_09200.bc b/tests/bc/scripts/multiply_09200.bc
new file mode 100644
index 000000000000..2dbdb1bec1b9
--- /dev/null
+++ b/tests/bc/scripts/multiply_09200.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9101; i <= 9200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_09300.bc b/tests/bc/scripts/multiply_09300.bc
new file mode 100644
index 000000000000..ffc5b8cea907
--- /dev/null
+++ b/tests/bc/scripts/multiply_09300.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9201; i <= 9300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_09400.bc b/tests/bc/scripts/multiply_09400.bc
new file mode 100644
index 000000000000..6932c1dd73c7
--- /dev/null
+++ b/tests/bc/scripts/multiply_09400.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9301; i <= 9400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_09500.bc b/tests/bc/scripts/multiply_09500.bc
new file mode 100644
index 000000000000..2ac486b146a0
--- /dev/null
+++ b/tests/bc/scripts/multiply_09500.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9401; i <= 9500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_09600.bc b/tests/bc/scripts/multiply_09600.bc
new file mode 100644
index 000000000000..782176ba711b
--- /dev/null
+++ b/tests/bc/scripts/multiply_09600.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9501; i <= 9600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_09700.bc b/tests/bc/scripts/multiply_09700.bc
new file mode 100644
index 000000000000..fe4135de594d
--- /dev/null
+++ b/tests/bc/scripts/multiply_09700.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9601; i <= 9700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_09800.bc b/tests/bc/scripts/multiply_09800.bc
new file mode 100644
index 000000000000..3115b311f312
--- /dev/null
+++ b/tests/bc/scripts/multiply_09800.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9701; i <= 9800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_09900.bc b/tests/bc/scripts/multiply_09900.bc
new file mode 100644
index 000000000000..abbcfeefbbe9
--- /dev/null
+++ b/tests/bc/scripts/multiply_09900.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9801; i <= 9900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/multiply_10000.bc b/tests/bc/scripts/multiply_10000.bc
new file mode 100644
index 000000000000..e97e61623eac
--- /dev/null
+++ b/tests/bc/scripts/multiply_10000.bc
@@ -0,0 +1,20 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9901; i <= 10000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[0] * a[j]
+ a[i] * a[j]
+ (a[0] * i) * a[j]
+ a[0] * (a[j] * i)
+ (a[0] * i) * (a[j] * i)
+ }
+}
diff --git a/tests/bc/scripts/parse.bc b/tests/bc/scripts/parse.bc
deleted file mode 100644
index 179daf116efd..000000000000
--- a/tests/bc/scripts/parse.bc
+++ /dev/null
@@ -1,20 +0,0 @@
-#! /usr/bin/bc -q
-
-for (b = 2; b <= 16; ++b) {
- if (b == 10) continue
- obase = 10
- print "ibase = A; ibase = ", b, "\n"
- print "\qibase = \q\n"
- b
- obase = b
- for (i = 0; i <= 4096; ++i) {
- i
- print "0.", i, "\n"
- print ".", i, "\n"
- print "1.", i, "\n"
- print i, ".", "\n"
- print i, ".", i, "\n"
- }
-}
-
-halt
diff --git a/tests/bc/scripts/parse_02.bc b/tests/bc/scripts/parse_02.bc
new file mode 100644
index 000000000000..dc695e8a63ed
--- /dev/null
+++ b/tests/bc/scripts/parse_02.bc
@@ -0,0 +1,19 @@
+#! /usr/bin/bc -q
+
+b = 2
+
+obase = 10
+print "ibase = A; ibase = ", b, "\n"
+print "\qibase = \q\n"
+b
+obase = b
+for (i = 0; i <= 4096; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+halt
diff --git a/tests/bc/scripts/parse_03.bc b/tests/bc/scripts/parse_03.bc
new file mode 100644
index 000000000000..8418c472184e
--- /dev/null
+++ b/tests/bc/scripts/parse_03.bc
@@ -0,0 +1,19 @@
+#! /usr/bin/bc -q
+
+b = 3
+
+obase = 10
+print "ibase = A; ibase = ", b, "\n"
+print "\qibase = \q\n"
+b
+obase = b
+for (i = 0; i <= 4096; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+halt
diff --git a/tests/bc/scripts/parse_04.bc b/tests/bc/scripts/parse_04.bc
new file mode 100644
index 000000000000..6671dc3093e6
--- /dev/null
+++ b/tests/bc/scripts/parse_04.bc
@@ -0,0 +1,19 @@
+#! /usr/bin/bc -q
+
+b = 4
+
+obase = 10
+print "ibase = A; ibase = ", b, "\n"
+print "\qibase = \q\n"
+b
+obase = b
+for (i = 0; i <= 4096; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+halt
diff --git a/tests/bc/scripts/parse_05.bc b/tests/bc/scripts/parse_05.bc
new file mode 100644
index 000000000000..868c003a507a
--- /dev/null
+++ b/tests/bc/scripts/parse_05.bc
@@ -0,0 +1,19 @@
+#! /usr/bin/bc -q
+
+b = 5
+
+obase = 10
+print "ibase = A; ibase = ", b, "\n"
+print "\qibase = \q\n"
+b
+obase = b
+for (i = 0; i <= 4096; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+halt
diff --git a/tests/bc/scripts/parse_06.bc b/tests/bc/scripts/parse_06.bc
new file mode 100644
index 000000000000..ddef2fd58686
--- /dev/null
+++ b/tests/bc/scripts/parse_06.bc
@@ -0,0 +1,19 @@
+#! /usr/bin/bc -q
+
+b = 6
+
+obase = 10
+print "ibase = A; ibase = ", b, "\n"
+print "\qibase = \q\n"
+b
+obase = b
+for (i = 0; i <= 4096; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+halt
diff --git a/tests/bc/scripts/parse_07.bc b/tests/bc/scripts/parse_07.bc
new file mode 100644
index 000000000000..83fb125d719a
--- /dev/null
+++ b/tests/bc/scripts/parse_07.bc
@@ -0,0 +1,19 @@
+#! /usr/bin/bc -q
+
+b = 7
+
+obase = 10
+print "ibase = A; ibase = ", b, "\n"
+print "\qibase = \q\n"
+b
+obase = b
+for (i = 0; i <= 4096; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+halt
diff --git a/tests/bc/scripts/parse_08.bc b/tests/bc/scripts/parse_08.bc
new file mode 100644
index 000000000000..c8f798e4e82e
--- /dev/null
+++ b/tests/bc/scripts/parse_08.bc
@@ -0,0 +1,19 @@
+#! /usr/bin/bc -q
+
+b = 8
+
+obase = 10
+print "ibase = A; ibase = ", b, "\n"
+print "\qibase = \q\n"
+b
+obase = b
+for (i = 0; i <= 4096; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+halt
diff --git a/tests/bc/scripts/parse_09.bc b/tests/bc/scripts/parse_09.bc
new file mode 100644
index 000000000000..98463b24edde
--- /dev/null
+++ b/tests/bc/scripts/parse_09.bc
@@ -0,0 +1,19 @@
+#! /usr/bin/bc -q
+
+b = 9
+
+obase = 10
+print "ibase = A; ibase = ", b, "\n"
+print "\qibase = \q\n"
+b
+obase = b
+for (i = 0; i <= 4096; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+halt
diff --git a/tests/bc/scripts/parse_11.bc b/tests/bc/scripts/parse_11.bc
new file mode 100644
index 000000000000..efaf17293ce8
--- /dev/null
+++ b/tests/bc/scripts/parse_11.bc
@@ -0,0 +1,19 @@
+#! /usr/bin/bc -q
+
+b = 11
+
+obase = 10
+print "ibase = A; ibase = ", b, "\n"
+print "\qibase = \q\n"
+b
+obase = b
+for (i = 0; i <= 4096; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+halt
diff --git a/tests/bc/scripts/parse_12.bc b/tests/bc/scripts/parse_12.bc
new file mode 100644
index 000000000000..a71a05a3b9dd
--- /dev/null
+++ b/tests/bc/scripts/parse_12.bc
@@ -0,0 +1,19 @@
+#! /usr/bin/bc -q
+
+b = 12
+
+obase = 10
+print "ibase = A; ibase = ", b, "\n"
+print "\qibase = \q\n"
+b
+obase = b
+for (i = 0; i <= 4096; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+halt
diff --git a/tests/bc/scripts/parse_13.bc b/tests/bc/scripts/parse_13.bc
new file mode 100644
index 000000000000..37d88e7168f0
--- /dev/null
+++ b/tests/bc/scripts/parse_13.bc
@@ -0,0 +1,19 @@
+#! /usr/bin/bc -q
+
+b = 13
+
+obase = 10
+print "ibase = A; ibase = ", b, "\n"
+print "\qibase = \q\n"
+b
+obase = b
+for (i = 0; i <= 4096; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+halt
diff --git a/tests/bc/scripts/parse_14.bc b/tests/bc/scripts/parse_14.bc
new file mode 100644
index 000000000000..e824db979639
--- /dev/null
+++ b/tests/bc/scripts/parse_14.bc
@@ -0,0 +1,19 @@
+#! /usr/bin/bc -q
+
+b = 14
+
+obase = 10
+print "ibase = A; ibase = ", b, "\n"
+print "\qibase = \q\n"
+b
+obase = b
+for (i = 0; i <= 4096; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+halt
diff --git a/tests/bc/scripts/parse_15.bc b/tests/bc/scripts/parse_15.bc
new file mode 100644
index 000000000000..ad954a2ac4a8
--- /dev/null
+++ b/tests/bc/scripts/parse_15.bc
@@ -0,0 +1,19 @@
+#! /usr/bin/bc -q
+
+b = 15
+
+obase = 10
+print "ibase = A; ibase = ", b, "\n"
+print "\qibase = \q\n"
+b
+obase = b
+for (i = 0; i <= 4096; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+halt
diff --git a/tests/bc/scripts/parse_16.bc b/tests/bc/scripts/parse_16.bc
new file mode 100644
index 000000000000..3a716cbe40ec
--- /dev/null
+++ b/tests/bc/scripts/parse_16.bc
@@ -0,0 +1,19 @@
+#! /usr/bin/bc -q
+
+b = 16
+
+obase = 10
+print "ibase = A; ibase = ", b, "\n"
+print "\qibase = \q\n"
+b
+obase = b
+for (i = 0; i <= 4096; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+halt
diff --git a/tests/bc/scripts/print.bc b/tests/bc/scripts/print.bc
deleted file mode 100644
index 9530cbdb3fc2..000000000000
--- a/tests/bc/scripts/print.bc
+++ /dev/null
@@ -1,25 +0,0 @@
-#! /usr/bin/bc -q
-
-for (b = 2; b <= 100; ++b) {
-
- if (b == 10) continue
-
- s = b * b
-
- print "obase = ", b, "\n"
- print "\qobase = \q\n"
- b
-
- for (i = 0; i <= s; ++i) {
- i
- print "0.", i, "\n"
- print ".", i, "\n"
- print "1.", i, "\n"
- print i, ".", "\n"
- print i, ".", i, "\n"
- }
-
- 2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
-}
-
-halt
diff --git a/tests/bc/scripts/print_002.bc b/tests/bc/scripts/print_002.bc
new file mode 100644
index 000000000000..e96bd8d3f440
--- /dev/null
+++ b/tests/bc/scripts/print_002.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 2
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_003.bc b/tests/bc/scripts/print_003.bc
new file mode 100644
index 000000000000..46365153a3c8
--- /dev/null
+++ b/tests/bc/scripts/print_003.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 3
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_004.bc b/tests/bc/scripts/print_004.bc
new file mode 100644
index 000000000000..ff0b285930fe
--- /dev/null
+++ b/tests/bc/scripts/print_004.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 4
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_005.bc b/tests/bc/scripts/print_005.bc
new file mode 100644
index 000000000000..6a5982ae6a5e
--- /dev/null
+++ b/tests/bc/scripts/print_005.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 5
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_006.bc b/tests/bc/scripts/print_006.bc
new file mode 100644
index 000000000000..3b9bbccb2850
--- /dev/null
+++ b/tests/bc/scripts/print_006.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 6
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_007.bc b/tests/bc/scripts/print_007.bc
new file mode 100644
index 000000000000..f6e784792575
--- /dev/null
+++ b/tests/bc/scripts/print_007.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 7
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_008.bc b/tests/bc/scripts/print_008.bc
new file mode 100644
index 000000000000..a77d41751233
--- /dev/null
+++ b/tests/bc/scripts/print_008.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 8
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_009.bc b/tests/bc/scripts/print_009.bc
new file mode 100644
index 000000000000..1aef988112a1
--- /dev/null
+++ b/tests/bc/scripts/print_009.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 9
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_011.bc b/tests/bc/scripts/print_011.bc
new file mode 100644
index 000000000000..fb2d29293ad8
--- /dev/null
+++ b/tests/bc/scripts/print_011.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 11
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_012.bc b/tests/bc/scripts/print_012.bc
new file mode 100644
index 000000000000..466e64e2798e
--- /dev/null
+++ b/tests/bc/scripts/print_012.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 12
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_013.bc b/tests/bc/scripts/print_013.bc
new file mode 100644
index 000000000000..55525fd1398c
--- /dev/null
+++ b/tests/bc/scripts/print_013.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 13
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_014.bc b/tests/bc/scripts/print_014.bc
new file mode 100644
index 000000000000..dfa40541c7a3
--- /dev/null
+++ b/tests/bc/scripts/print_014.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 14
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_015.bc b/tests/bc/scripts/print_015.bc
new file mode 100644
index 000000000000..2426e409d94a
--- /dev/null
+++ b/tests/bc/scripts/print_015.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 15
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_016.bc b/tests/bc/scripts/print_016.bc
new file mode 100644
index 000000000000..44131bfe3ab7
--- /dev/null
+++ b/tests/bc/scripts/print_016.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 16
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_017.bc b/tests/bc/scripts/print_017.bc
new file mode 100644
index 000000000000..e6c802166d2a
--- /dev/null
+++ b/tests/bc/scripts/print_017.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 17
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_018.bc b/tests/bc/scripts/print_018.bc
new file mode 100644
index 000000000000..256c3436ab5a
--- /dev/null
+++ b/tests/bc/scripts/print_018.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 18
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_019.bc b/tests/bc/scripts/print_019.bc
new file mode 100644
index 000000000000..a2552236a144
--- /dev/null
+++ b/tests/bc/scripts/print_019.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 19
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_020.bc b/tests/bc/scripts/print_020.bc
new file mode 100644
index 000000000000..df15b92c727a
--- /dev/null
+++ b/tests/bc/scripts/print_020.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 20
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_021.bc b/tests/bc/scripts/print_021.bc
new file mode 100644
index 000000000000..83b3d2ad3c73
--- /dev/null
+++ b/tests/bc/scripts/print_021.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 21
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_022.bc b/tests/bc/scripts/print_022.bc
new file mode 100644
index 000000000000..9ab0d5e92f5c
--- /dev/null
+++ b/tests/bc/scripts/print_022.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 22
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_023.bc b/tests/bc/scripts/print_023.bc
new file mode 100644
index 000000000000..4641ee25d325
--- /dev/null
+++ b/tests/bc/scripts/print_023.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 23
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_024.bc b/tests/bc/scripts/print_024.bc
new file mode 100644
index 000000000000..7c02ba179d71
--- /dev/null
+++ b/tests/bc/scripts/print_024.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 24
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_025.bc b/tests/bc/scripts/print_025.bc
new file mode 100644
index 000000000000..95883f34338f
--- /dev/null
+++ b/tests/bc/scripts/print_025.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 25
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_026.bc b/tests/bc/scripts/print_026.bc
new file mode 100644
index 000000000000..152fe8053ddd
--- /dev/null
+++ b/tests/bc/scripts/print_026.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 26
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_027.bc b/tests/bc/scripts/print_027.bc
new file mode 100644
index 000000000000..60b56ca3112e
--- /dev/null
+++ b/tests/bc/scripts/print_027.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 27
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_028.bc b/tests/bc/scripts/print_028.bc
new file mode 100644
index 000000000000..b41b482aaec9
--- /dev/null
+++ b/tests/bc/scripts/print_028.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 28
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_029.bc b/tests/bc/scripts/print_029.bc
new file mode 100644
index 000000000000..3637407473e3
--- /dev/null
+++ b/tests/bc/scripts/print_029.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 29
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_030.bc b/tests/bc/scripts/print_030.bc
new file mode 100644
index 000000000000..066546061a72
--- /dev/null
+++ b/tests/bc/scripts/print_030.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 30
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_031.bc b/tests/bc/scripts/print_031.bc
new file mode 100644
index 000000000000..5f0ba04afdc3
--- /dev/null
+++ b/tests/bc/scripts/print_031.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 31
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_032.bc b/tests/bc/scripts/print_032.bc
new file mode 100644
index 000000000000..8c1f7b83b505
--- /dev/null
+++ b/tests/bc/scripts/print_032.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 32
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_033.bc b/tests/bc/scripts/print_033.bc
new file mode 100644
index 000000000000..d4af3e843772
--- /dev/null
+++ b/tests/bc/scripts/print_033.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 33
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_034.bc b/tests/bc/scripts/print_034.bc
new file mode 100644
index 000000000000..90607dac7a14
--- /dev/null
+++ b/tests/bc/scripts/print_034.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 34
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_035.bc b/tests/bc/scripts/print_035.bc
new file mode 100644
index 000000000000..175054b155ca
--- /dev/null
+++ b/tests/bc/scripts/print_035.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 35
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_036.bc b/tests/bc/scripts/print_036.bc
new file mode 100644
index 000000000000..63c212f3723d
--- /dev/null
+++ b/tests/bc/scripts/print_036.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 36
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_037.bc b/tests/bc/scripts/print_037.bc
new file mode 100644
index 000000000000..8e51d9af1c40
--- /dev/null
+++ b/tests/bc/scripts/print_037.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 37
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_038.bc b/tests/bc/scripts/print_038.bc
new file mode 100644
index 000000000000..7208ed1e8507
--- /dev/null
+++ b/tests/bc/scripts/print_038.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 38
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_039.bc b/tests/bc/scripts/print_039.bc
new file mode 100644
index 000000000000..0459f33f2e0d
--- /dev/null
+++ b/tests/bc/scripts/print_039.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 39
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_040.bc b/tests/bc/scripts/print_040.bc
new file mode 100644
index 000000000000..53df241dbaf0
--- /dev/null
+++ b/tests/bc/scripts/print_040.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 40
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_041.bc b/tests/bc/scripts/print_041.bc
new file mode 100644
index 000000000000..c539ad9592ee
--- /dev/null
+++ b/tests/bc/scripts/print_041.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 41
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_042.bc b/tests/bc/scripts/print_042.bc
new file mode 100644
index 000000000000..088c3b2f4cb4
--- /dev/null
+++ b/tests/bc/scripts/print_042.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 42
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_043.bc b/tests/bc/scripts/print_043.bc
new file mode 100644
index 000000000000..8646a8f2af4c
--- /dev/null
+++ b/tests/bc/scripts/print_043.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 43
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_044.bc b/tests/bc/scripts/print_044.bc
new file mode 100644
index 000000000000..1bd208266f4b
--- /dev/null
+++ b/tests/bc/scripts/print_044.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 44
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_045.bc b/tests/bc/scripts/print_045.bc
new file mode 100644
index 000000000000..7463c3e5575a
--- /dev/null
+++ b/tests/bc/scripts/print_045.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 45
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_046.bc b/tests/bc/scripts/print_046.bc
new file mode 100644
index 000000000000..dd78294c5bb1
--- /dev/null
+++ b/tests/bc/scripts/print_046.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 46
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_047.bc b/tests/bc/scripts/print_047.bc
new file mode 100644
index 000000000000..3b0654918876
--- /dev/null
+++ b/tests/bc/scripts/print_047.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 47
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_048.bc b/tests/bc/scripts/print_048.bc
new file mode 100644
index 000000000000..71dba3d7e536
--- /dev/null
+++ b/tests/bc/scripts/print_048.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 48
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_049.bc b/tests/bc/scripts/print_049.bc
new file mode 100644
index 000000000000..7ab19539ef2a
--- /dev/null
+++ b/tests/bc/scripts/print_049.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 49
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_050.bc b/tests/bc/scripts/print_050.bc
new file mode 100644
index 000000000000..93983f5f5c6f
--- /dev/null
+++ b/tests/bc/scripts/print_050.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 50
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_051.bc b/tests/bc/scripts/print_051.bc
new file mode 100644
index 000000000000..32f5e76a46b5
--- /dev/null
+++ b/tests/bc/scripts/print_051.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 51
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_052.bc b/tests/bc/scripts/print_052.bc
new file mode 100644
index 000000000000..662170d78452
--- /dev/null
+++ b/tests/bc/scripts/print_052.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 52
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_053.bc b/tests/bc/scripts/print_053.bc
new file mode 100644
index 000000000000..05986f27bd7e
--- /dev/null
+++ b/tests/bc/scripts/print_053.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 53
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_054.bc b/tests/bc/scripts/print_054.bc
new file mode 100644
index 000000000000..92e20b70329a
--- /dev/null
+++ b/tests/bc/scripts/print_054.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 54
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_055.bc b/tests/bc/scripts/print_055.bc
new file mode 100644
index 000000000000..014637b461c2
--- /dev/null
+++ b/tests/bc/scripts/print_055.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 55
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_056.bc b/tests/bc/scripts/print_056.bc
new file mode 100644
index 000000000000..42642cb8e29d
--- /dev/null
+++ b/tests/bc/scripts/print_056.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 56
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_057.bc b/tests/bc/scripts/print_057.bc
new file mode 100644
index 000000000000..e4dd3d1eb8f6
--- /dev/null
+++ b/tests/bc/scripts/print_057.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 57
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_058.bc b/tests/bc/scripts/print_058.bc
new file mode 100644
index 000000000000..cc2e5e5e1dae
--- /dev/null
+++ b/tests/bc/scripts/print_058.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 58
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_059.bc b/tests/bc/scripts/print_059.bc
new file mode 100644
index 000000000000..2abe27da21da
--- /dev/null
+++ b/tests/bc/scripts/print_059.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 59
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_060.bc b/tests/bc/scripts/print_060.bc
new file mode 100644
index 000000000000..c542d10d1e57
--- /dev/null
+++ b/tests/bc/scripts/print_060.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 60
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_061.bc b/tests/bc/scripts/print_061.bc
new file mode 100644
index 000000000000..bcd520e0f38e
--- /dev/null
+++ b/tests/bc/scripts/print_061.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 61
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_062.bc b/tests/bc/scripts/print_062.bc
new file mode 100644
index 000000000000..4b9875e077c3
--- /dev/null
+++ b/tests/bc/scripts/print_062.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 62
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_063.bc b/tests/bc/scripts/print_063.bc
new file mode 100644
index 000000000000..9f4d77042b23
--- /dev/null
+++ b/tests/bc/scripts/print_063.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 63
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_064.bc b/tests/bc/scripts/print_064.bc
new file mode 100644
index 000000000000..8878d0a8e05a
--- /dev/null
+++ b/tests/bc/scripts/print_064.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 64
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_065.bc b/tests/bc/scripts/print_065.bc
new file mode 100644
index 000000000000..faf3b4361d09
--- /dev/null
+++ b/tests/bc/scripts/print_065.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 65
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_066.bc b/tests/bc/scripts/print_066.bc
new file mode 100644
index 000000000000..07f30fa22c0f
--- /dev/null
+++ b/tests/bc/scripts/print_066.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 66
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_067.bc b/tests/bc/scripts/print_067.bc
new file mode 100644
index 000000000000..202604d755b0
--- /dev/null
+++ b/tests/bc/scripts/print_067.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 67
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_068.bc b/tests/bc/scripts/print_068.bc
new file mode 100644
index 000000000000..f90912bef26a
--- /dev/null
+++ b/tests/bc/scripts/print_068.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 68
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_069.bc b/tests/bc/scripts/print_069.bc
new file mode 100644
index 000000000000..175263e39074
--- /dev/null
+++ b/tests/bc/scripts/print_069.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 69
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_070.bc b/tests/bc/scripts/print_070.bc
new file mode 100644
index 000000000000..0786f4d3aa14
--- /dev/null
+++ b/tests/bc/scripts/print_070.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 70
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_071.bc b/tests/bc/scripts/print_071.bc
new file mode 100644
index 000000000000..292c38e91852
--- /dev/null
+++ b/tests/bc/scripts/print_071.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 71
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_072.bc b/tests/bc/scripts/print_072.bc
new file mode 100644
index 000000000000..e6506ee7ee37
--- /dev/null
+++ b/tests/bc/scripts/print_072.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 72
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_073.bc b/tests/bc/scripts/print_073.bc
new file mode 100644
index 000000000000..6b7d3efae5cd
--- /dev/null
+++ b/tests/bc/scripts/print_073.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 73
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_074.bc b/tests/bc/scripts/print_074.bc
new file mode 100644
index 000000000000..e61abaf98f94
--- /dev/null
+++ b/tests/bc/scripts/print_074.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 74
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_075.bc b/tests/bc/scripts/print_075.bc
new file mode 100644
index 000000000000..84704063a65e
--- /dev/null
+++ b/tests/bc/scripts/print_075.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 75
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_076.bc b/tests/bc/scripts/print_076.bc
new file mode 100644
index 000000000000..3efed22515d9
--- /dev/null
+++ b/tests/bc/scripts/print_076.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 76
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_077.bc b/tests/bc/scripts/print_077.bc
new file mode 100644
index 000000000000..ef01f150c1b0
--- /dev/null
+++ b/tests/bc/scripts/print_077.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 77
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_078.bc b/tests/bc/scripts/print_078.bc
new file mode 100644
index 000000000000..8f431f54c12f
--- /dev/null
+++ b/tests/bc/scripts/print_078.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 78
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_079.bc b/tests/bc/scripts/print_079.bc
new file mode 100644
index 000000000000..5eb213c19431
--- /dev/null
+++ b/tests/bc/scripts/print_079.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 79
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_080.bc b/tests/bc/scripts/print_080.bc
new file mode 100644
index 000000000000..46b1a547d3a3
--- /dev/null
+++ b/tests/bc/scripts/print_080.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 80
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_081.bc b/tests/bc/scripts/print_081.bc
new file mode 100644
index 000000000000..9b0f2415f19e
--- /dev/null
+++ b/tests/bc/scripts/print_081.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 81
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_082.bc b/tests/bc/scripts/print_082.bc
new file mode 100644
index 000000000000..ac1cc4028775
--- /dev/null
+++ b/tests/bc/scripts/print_082.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 82
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_083.bc b/tests/bc/scripts/print_083.bc
new file mode 100644
index 000000000000..8f6966e280f4
--- /dev/null
+++ b/tests/bc/scripts/print_083.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 83
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_084.bc b/tests/bc/scripts/print_084.bc
new file mode 100644
index 000000000000..e5e2c167c6f7
--- /dev/null
+++ b/tests/bc/scripts/print_084.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 84
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_085.bc b/tests/bc/scripts/print_085.bc
new file mode 100644
index 000000000000..3e5b50b591f7
--- /dev/null
+++ b/tests/bc/scripts/print_085.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 85
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_086.bc b/tests/bc/scripts/print_086.bc
new file mode 100644
index 000000000000..9cfcc8982fa7
--- /dev/null
+++ b/tests/bc/scripts/print_086.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 86
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_087.bc b/tests/bc/scripts/print_087.bc
new file mode 100644
index 000000000000..ed3c6687272b
--- /dev/null
+++ b/tests/bc/scripts/print_087.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 87
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_088.bc b/tests/bc/scripts/print_088.bc
new file mode 100644
index 000000000000..1e001883e576
--- /dev/null
+++ b/tests/bc/scripts/print_088.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 88
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_089.bc b/tests/bc/scripts/print_089.bc
new file mode 100644
index 000000000000..4234219f487d
--- /dev/null
+++ b/tests/bc/scripts/print_089.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 89
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_090.bc b/tests/bc/scripts/print_090.bc
new file mode 100644
index 000000000000..ebe4650c1696
--- /dev/null
+++ b/tests/bc/scripts/print_090.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 90
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_091.bc b/tests/bc/scripts/print_091.bc
new file mode 100644
index 000000000000..5c5fd5c95256
--- /dev/null
+++ b/tests/bc/scripts/print_091.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 91
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_092.bc b/tests/bc/scripts/print_092.bc
new file mode 100644
index 000000000000..992a738fee41
--- /dev/null
+++ b/tests/bc/scripts/print_092.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 92
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_093.bc b/tests/bc/scripts/print_093.bc
new file mode 100644
index 000000000000..7e91b2b5e8fd
--- /dev/null
+++ b/tests/bc/scripts/print_093.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 93
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_094.bc b/tests/bc/scripts/print_094.bc
new file mode 100644
index 000000000000..3567fe0bf69e
--- /dev/null
+++ b/tests/bc/scripts/print_094.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 94
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_095.bc b/tests/bc/scripts/print_095.bc
new file mode 100644
index 000000000000..1945f2daee1e
--- /dev/null
+++ b/tests/bc/scripts/print_095.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 95
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_096.bc b/tests/bc/scripts/print_096.bc
new file mode 100644
index 000000000000..837f87a57e63
--- /dev/null
+++ b/tests/bc/scripts/print_096.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 96
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_097.bc b/tests/bc/scripts/print_097.bc
new file mode 100644
index 000000000000..efcf4a096ece
--- /dev/null
+++ b/tests/bc/scripts/print_097.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 97
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_098.bc b/tests/bc/scripts/print_098.bc
new file mode 100644
index 000000000000..d14203d29656
--- /dev/null
+++ b/tests/bc/scripts/print_098.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 98
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_099.bc b/tests/bc/scripts/print_099.bc
new file mode 100644
index 000000000000..0bbb410318ee
--- /dev/null
+++ b/tests/bc/scripts/print_099.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 99
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/print_100.bc b/tests/bc/scripts/print_100.bc
new file mode 100644
index 000000000000..4ac46e3eba42
--- /dev/null
+++ b/tests/bc/scripts/print_100.bc
@@ -0,0 +1,22 @@
+#! /usr/bin/bc -q
+
+b = 100
+
+s = b * b
+
+print "obase = ", b, "\n"
+print "\qobase = \q\n"
+b
+
+for (i = 0; i <= s; ++i) {
+ i
+ print "0.", i, "\n"
+ print ".", i, "\n"
+ print "1.", i, "\n"
+ print i, ".", "\n"
+ print i, ".", i, "\n"
+}
+
+2189432174861923048671023498128347619023487610234689172304.192748960128745108927461089237469018723460
+
+halt
diff --git a/tests/bc/scripts/subtract.bc b/tests/bc/scripts/subtract_00100.bc
index 1e592942cab3..93339780f2f7 100644
--- a/tests/bc/scripts/subtract.bc
+++ b/tests/bc/scripts/subtract_00100.bc
@@ -10,7 +10,7 @@ for (i = 0; i <= len; ++i) {
a[i]
}
-for (i = 1; i <= 10000; ++i) {
+for (i = 1; i <= 100; ++i) {
for (j = 0; j < len; ++j) {
a[i] - a[j]
}
diff --git a/tests/bc/scripts/subtract_00200.bc b/tests/bc/scripts/subtract_00200.bc
new file mode 100644
index 000000000000..2bcad94d76d1
--- /dev/null
+++ b/tests/bc/scripts/subtract_00200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 101; i <= 200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_00300.bc b/tests/bc/scripts/subtract_00300.bc
new file mode 100644
index 000000000000..5d5b5fd2bf61
--- /dev/null
+++ b/tests/bc/scripts/subtract_00300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 201; i <= 300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_00400.bc b/tests/bc/scripts/subtract_00400.bc
new file mode 100644
index 000000000000..9298eeec0007
--- /dev/null
+++ b/tests/bc/scripts/subtract_00400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 301; i <= 400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_00500.bc b/tests/bc/scripts/subtract_00500.bc
new file mode 100644
index 000000000000..581a8144fea7
--- /dev/null
+++ b/tests/bc/scripts/subtract_00500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 401; i <= 500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_00600.bc b/tests/bc/scripts/subtract_00600.bc
new file mode 100644
index 000000000000..2a1a5e6eb1ae
--- /dev/null
+++ b/tests/bc/scripts/subtract_00600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 501; i <= 600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_00700.bc b/tests/bc/scripts/subtract_00700.bc
new file mode 100644
index 000000000000..867277161d2c
--- /dev/null
+++ b/tests/bc/scripts/subtract_00700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 601; i <= 700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_00800.bc b/tests/bc/scripts/subtract_00800.bc
new file mode 100644
index 000000000000..68dfd28f1108
--- /dev/null
+++ b/tests/bc/scripts/subtract_00800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 701; i <= 800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_00900.bc b/tests/bc/scripts/subtract_00900.bc
new file mode 100644
index 000000000000..b343861ecf26
--- /dev/null
+++ b/tests/bc/scripts/subtract_00900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 801; i <= 900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_01000.bc b/tests/bc/scripts/subtract_01000.bc
new file mode 100644
index 000000000000..4e8e5951c8d9
--- /dev/null
+++ b/tests/bc/scripts/subtract_01000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 901; i <= 1000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_01100.bc b/tests/bc/scripts/subtract_01100.bc
new file mode 100644
index 000000000000..0b7d1a5ca314
--- /dev/null
+++ b/tests/bc/scripts/subtract_01100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1001; i <= 1100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_01200.bc b/tests/bc/scripts/subtract_01200.bc
new file mode 100644
index 000000000000..bfa237043f89
--- /dev/null
+++ b/tests/bc/scripts/subtract_01200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1101; i <= 1200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_01300.bc b/tests/bc/scripts/subtract_01300.bc
new file mode 100644
index 000000000000..c83483db9e8b
--- /dev/null
+++ b/tests/bc/scripts/subtract_01300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1201; i <= 1300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_01400.bc b/tests/bc/scripts/subtract_01400.bc
new file mode 100644
index 000000000000..e979361f49f4
--- /dev/null
+++ b/tests/bc/scripts/subtract_01400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1301; i <= 1400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_01500.bc b/tests/bc/scripts/subtract_01500.bc
new file mode 100644
index 000000000000..c2ef1ee1385e
--- /dev/null
+++ b/tests/bc/scripts/subtract_01500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1401; i <= 1500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_01600.bc b/tests/bc/scripts/subtract_01600.bc
new file mode 100644
index 000000000000..2113ddefeb5f
--- /dev/null
+++ b/tests/bc/scripts/subtract_01600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1501; i <= 1600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_01700.bc b/tests/bc/scripts/subtract_01700.bc
new file mode 100644
index 000000000000..ca9505c1983f
--- /dev/null
+++ b/tests/bc/scripts/subtract_01700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1601; i <= 1700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_01800.bc b/tests/bc/scripts/subtract_01800.bc
new file mode 100644
index 000000000000..650cc6a7d551
--- /dev/null
+++ b/tests/bc/scripts/subtract_01800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1701; i <= 1800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_01900.bc b/tests/bc/scripts/subtract_01900.bc
new file mode 100644
index 000000000000..72c17fd1af8a
--- /dev/null
+++ b/tests/bc/scripts/subtract_01900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1801; i <= 1900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_02000.bc b/tests/bc/scripts/subtract_02000.bc
new file mode 100644
index 000000000000..579c84e67f8f
--- /dev/null
+++ b/tests/bc/scripts/subtract_02000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 1901; i <= 2000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_02100.bc b/tests/bc/scripts/subtract_02100.bc
new file mode 100644
index 000000000000..2ed9f5f0c8a9
--- /dev/null
+++ b/tests/bc/scripts/subtract_02100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2001; i <= 2100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_02200.bc b/tests/bc/scripts/subtract_02200.bc
new file mode 100644
index 000000000000..0a11cab25d6e
--- /dev/null
+++ b/tests/bc/scripts/subtract_02200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2101; i <= 2200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_02300.bc b/tests/bc/scripts/subtract_02300.bc
new file mode 100644
index 000000000000..29c66c1913fd
--- /dev/null
+++ b/tests/bc/scripts/subtract_02300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2201; i <= 2300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_02400.bc b/tests/bc/scripts/subtract_02400.bc
new file mode 100644
index 000000000000..b0f2f197a2c6
--- /dev/null
+++ b/tests/bc/scripts/subtract_02400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2301; i <= 2400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_02500.bc b/tests/bc/scripts/subtract_02500.bc
new file mode 100644
index 000000000000..7e9d46a8bc3b
--- /dev/null
+++ b/tests/bc/scripts/subtract_02500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2401; i <= 2500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_02600.bc b/tests/bc/scripts/subtract_02600.bc
new file mode 100644
index 000000000000..49acabcf66e5
--- /dev/null
+++ b/tests/bc/scripts/subtract_02600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2501; i <= 2600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_02700.bc b/tests/bc/scripts/subtract_02700.bc
new file mode 100644
index 000000000000..8d7473e93f75
--- /dev/null
+++ b/tests/bc/scripts/subtract_02700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2601; i <= 2700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_02800.bc b/tests/bc/scripts/subtract_02800.bc
new file mode 100644
index 000000000000..588db5a26ee7
--- /dev/null
+++ b/tests/bc/scripts/subtract_02800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2701; i <= 2800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_02900.bc b/tests/bc/scripts/subtract_02900.bc
new file mode 100644
index 000000000000..1e6a4fea0416
--- /dev/null
+++ b/tests/bc/scripts/subtract_02900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2801; i <= 2900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_03000.bc b/tests/bc/scripts/subtract_03000.bc
new file mode 100644
index 000000000000..0eb1e3da7cf9
--- /dev/null
+++ b/tests/bc/scripts/subtract_03000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 2901; i <= 3000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_03100.bc b/tests/bc/scripts/subtract_03100.bc
new file mode 100644
index 000000000000..6513ee49fe93
--- /dev/null
+++ b/tests/bc/scripts/subtract_03100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3001; i <= 3100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_03200.bc b/tests/bc/scripts/subtract_03200.bc
new file mode 100644
index 000000000000..310541d4de02
--- /dev/null
+++ b/tests/bc/scripts/subtract_03200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3101; i <= 3200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_03300.bc b/tests/bc/scripts/subtract_03300.bc
new file mode 100644
index 000000000000..c984f7c73e04
--- /dev/null
+++ b/tests/bc/scripts/subtract_03300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3201; i <= 3300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_03400.bc b/tests/bc/scripts/subtract_03400.bc
new file mode 100644
index 000000000000..608ab651fc2b
--- /dev/null
+++ b/tests/bc/scripts/subtract_03400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3301; i <= 3400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_03500.bc b/tests/bc/scripts/subtract_03500.bc
new file mode 100644
index 000000000000..215b96d850d4
--- /dev/null
+++ b/tests/bc/scripts/subtract_03500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3401; i <= 3500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_03600.bc b/tests/bc/scripts/subtract_03600.bc
new file mode 100644
index 000000000000..90d0d4d5144e
--- /dev/null
+++ b/tests/bc/scripts/subtract_03600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3501; i <= 3600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_03700.bc b/tests/bc/scripts/subtract_03700.bc
new file mode 100644
index 000000000000..511bf1ed4f9d
--- /dev/null
+++ b/tests/bc/scripts/subtract_03700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3601; i <= 3700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_03800.bc b/tests/bc/scripts/subtract_03800.bc
new file mode 100644
index 000000000000..99b69618b745
--- /dev/null
+++ b/tests/bc/scripts/subtract_03800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3701; i <= 3800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_03900.bc b/tests/bc/scripts/subtract_03900.bc
new file mode 100644
index 000000000000..a438bdfb86be
--- /dev/null
+++ b/tests/bc/scripts/subtract_03900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3801; i <= 3900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_04000.bc b/tests/bc/scripts/subtract_04000.bc
new file mode 100644
index 000000000000..7371044e02c3
--- /dev/null
+++ b/tests/bc/scripts/subtract_04000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 3901; i <= 4000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_04100.bc b/tests/bc/scripts/subtract_04100.bc
new file mode 100644
index 000000000000..f9f47d394f65
--- /dev/null
+++ b/tests/bc/scripts/subtract_04100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4001; i <= 4100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_04200.bc b/tests/bc/scripts/subtract_04200.bc
new file mode 100644
index 000000000000..56ff98e521b1
--- /dev/null
+++ b/tests/bc/scripts/subtract_04200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4101; i <= 4200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_04300.bc b/tests/bc/scripts/subtract_04300.bc
new file mode 100644
index 000000000000..2ee5767b2088
--- /dev/null
+++ b/tests/bc/scripts/subtract_04300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4201; i <= 4300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_04400.bc b/tests/bc/scripts/subtract_04400.bc
new file mode 100644
index 000000000000..b355f189948f
--- /dev/null
+++ b/tests/bc/scripts/subtract_04400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4301; i <= 4400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_04500.bc b/tests/bc/scripts/subtract_04500.bc
new file mode 100644
index 000000000000..aa34485891ce
--- /dev/null
+++ b/tests/bc/scripts/subtract_04500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4401; i <= 4500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_04600.bc b/tests/bc/scripts/subtract_04600.bc
new file mode 100644
index 000000000000..cd5bea596488
--- /dev/null
+++ b/tests/bc/scripts/subtract_04600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4501; i <= 4600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_04700.bc b/tests/bc/scripts/subtract_04700.bc
new file mode 100644
index 000000000000..36de8058bb93
--- /dev/null
+++ b/tests/bc/scripts/subtract_04700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4601; i <= 4700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_04800.bc b/tests/bc/scripts/subtract_04800.bc
new file mode 100644
index 000000000000..cc714dd72fd9
--- /dev/null
+++ b/tests/bc/scripts/subtract_04800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4701; i <= 4800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_04900.bc b/tests/bc/scripts/subtract_04900.bc
new file mode 100644
index 000000000000..6e8cfb8c931d
--- /dev/null
+++ b/tests/bc/scripts/subtract_04900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4801; i <= 4900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_05000.bc b/tests/bc/scripts/subtract_05000.bc
new file mode 100644
index 000000000000..f4847219bdb9
--- /dev/null
+++ b/tests/bc/scripts/subtract_05000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 4901; i <= 5000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_05100.bc b/tests/bc/scripts/subtract_05100.bc
new file mode 100644
index 000000000000..bea4f5b09f2d
--- /dev/null
+++ b/tests/bc/scripts/subtract_05100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5001; i <= 5100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_05200.bc b/tests/bc/scripts/subtract_05200.bc
new file mode 100644
index 000000000000..38a7b5c6d234
--- /dev/null
+++ b/tests/bc/scripts/subtract_05200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5101; i <= 5200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_05300.bc b/tests/bc/scripts/subtract_05300.bc
new file mode 100644
index 000000000000..9004108f3e8d
--- /dev/null
+++ b/tests/bc/scripts/subtract_05300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5201; i <= 5300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_05400.bc b/tests/bc/scripts/subtract_05400.bc
new file mode 100644
index 000000000000..eec164c504cb
--- /dev/null
+++ b/tests/bc/scripts/subtract_05400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5301; i <= 5400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_05500.bc b/tests/bc/scripts/subtract_05500.bc
new file mode 100644
index 000000000000..864f05e70d25
--- /dev/null
+++ b/tests/bc/scripts/subtract_05500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5401; i <= 5500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_05600.bc b/tests/bc/scripts/subtract_05600.bc
new file mode 100644
index 000000000000..874f45183b7c
--- /dev/null
+++ b/tests/bc/scripts/subtract_05600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5501; i <= 5600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_05700.bc b/tests/bc/scripts/subtract_05700.bc
new file mode 100644
index 000000000000..6a5c351c574f
--- /dev/null
+++ b/tests/bc/scripts/subtract_05700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5601; i <= 5700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_05800.bc b/tests/bc/scripts/subtract_05800.bc
new file mode 100644
index 000000000000..5fc99fe84503
--- /dev/null
+++ b/tests/bc/scripts/subtract_05800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5701; i <= 5800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_05900.bc b/tests/bc/scripts/subtract_05900.bc
new file mode 100644
index 000000000000..cb12eba549b2
--- /dev/null
+++ b/tests/bc/scripts/subtract_05900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5801; i <= 5900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_06000.bc b/tests/bc/scripts/subtract_06000.bc
new file mode 100644
index 000000000000..0c85a7267eb1
--- /dev/null
+++ b/tests/bc/scripts/subtract_06000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 5901; i <= 6000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_06100.bc b/tests/bc/scripts/subtract_06100.bc
new file mode 100644
index 000000000000..8f43fc2687d3
--- /dev/null
+++ b/tests/bc/scripts/subtract_06100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6001; i <= 6100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_06200.bc b/tests/bc/scripts/subtract_06200.bc
new file mode 100644
index 000000000000..d508561b5838
--- /dev/null
+++ b/tests/bc/scripts/subtract_06200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6101; i <= 6200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_06300.bc b/tests/bc/scripts/subtract_06300.bc
new file mode 100644
index 000000000000..3073a3f75dfc
--- /dev/null
+++ b/tests/bc/scripts/subtract_06300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6201; i <= 6300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_06400.bc b/tests/bc/scripts/subtract_06400.bc
new file mode 100644
index 000000000000..ee25fc01bca3
--- /dev/null
+++ b/tests/bc/scripts/subtract_06400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6301; i <= 6400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_06500.bc b/tests/bc/scripts/subtract_06500.bc
new file mode 100644
index 000000000000..ff59fcde38c2
--- /dev/null
+++ b/tests/bc/scripts/subtract_06500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6401; i <= 6500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_06600.bc b/tests/bc/scripts/subtract_06600.bc
new file mode 100644
index 000000000000..8bd56c8d2df9
--- /dev/null
+++ b/tests/bc/scripts/subtract_06600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6501; i <= 6600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_06700.bc b/tests/bc/scripts/subtract_06700.bc
new file mode 100644
index 000000000000..160a31bdf4a2
--- /dev/null
+++ b/tests/bc/scripts/subtract_06700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6601; i <= 6700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_06800.bc b/tests/bc/scripts/subtract_06800.bc
new file mode 100644
index 000000000000..7d2bc99dec0d
--- /dev/null
+++ b/tests/bc/scripts/subtract_06800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6701; i <= 6800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_06900.bc b/tests/bc/scripts/subtract_06900.bc
new file mode 100644
index 000000000000..716d7c273111
--- /dev/null
+++ b/tests/bc/scripts/subtract_06900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6801; i <= 6900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_07000.bc b/tests/bc/scripts/subtract_07000.bc
new file mode 100644
index 000000000000..259dc55507f2
--- /dev/null
+++ b/tests/bc/scripts/subtract_07000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 6901; i <= 7000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_07100.bc b/tests/bc/scripts/subtract_07100.bc
new file mode 100644
index 000000000000..b992c30681ec
--- /dev/null
+++ b/tests/bc/scripts/subtract_07100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7001; i <= 7100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_07200.bc b/tests/bc/scripts/subtract_07200.bc
new file mode 100644
index 000000000000..afa77522e912
--- /dev/null
+++ b/tests/bc/scripts/subtract_07200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7101; i <= 7200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_07300.bc b/tests/bc/scripts/subtract_07300.bc
new file mode 100644
index 000000000000..5dd6997fbeff
--- /dev/null
+++ b/tests/bc/scripts/subtract_07300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7201; i <= 7300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_07400.bc b/tests/bc/scripts/subtract_07400.bc
new file mode 100644
index 000000000000..70b88b1bc04b
--- /dev/null
+++ b/tests/bc/scripts/subtract_07400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7301; i <= 7400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_07500.bc b/tests/bc/scripts/subtract_07500.bc
new file mode 100644
index 000000000000..806565dc5fa8
--- /dev/null
+++ b/tests/bc/scripts/subtract_07500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7401; i <= 7500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_07600.bc b/tests/bc/scripts/subtract_07600.bc
new file mode 100644
index 000000000000..b063df122391
--- /dev/null
+++ b/tests/bc/scripts/subtract_07600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7501; i <= 7600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_07700.bc b/tests/bc/scripts/subtract_07700.bc
new file mode 100644
index 000000000000..f31cb7b170a8
--- /dev/null
+++ b/tests/bc/scripts/subtract_07700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7601; i <= 7700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_07800.bc b/tests/bc/scripts/subtract_07800.bc
new file mode 100644
index 000000000000..222b583de5c5
--- /dev/null
+++ b/tests/bc/scripts/subtract_07800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7701; i <= 7800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_07900.bc b/tests/bc/scripts/subtract_07900.bc
new file mode 100644
index 000000000000..8a36cb2020c2
--- /dev/null
+++ b/tests/bc/scripts/subtract_07900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7801; i <= 7900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_08000.bc b/tests/bc/scripts/subtract_08000.bc
new file mode 100644
index 000000000000..8b10e0644622
--- /dev/null
+++ b/tests/bc/scripts/subtract_08000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 7901; i <= 8000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_08100.bc b/tests/bc/scripts/subtract_08100.bc
new file mode 100644
index 000000000000..b7bf9481f6ff
--- /dev/null
+++ b/tests/bc/scripts/subtract_08100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8001; i <= 8100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_08200.bc b/tests/bc/scripts/subtract_08200.bc
new file mode 100644
index 000000000000..2cf2b2282ca1
--- /dev/null
+++ b/tests/bc/scripts/subtract_08200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8101; i <= 8200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_08300.bc b/tests/bc/scripts/subtract_08300.bc
new file mode 100644
index 000000000000..43e1090b2708
--- /dev/null
+++ b/tests/bc/scripts/subtract_08300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8201; i <= 8300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_08400.bc b/tests/bc/scripts/subtract_08400.bc
new file mode 100644
index 000000000000..ecde1157ef8d
--- /dev/null
+++ b/tests/bc/scripts/subtract_08400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8301; i <= 8400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_08500.bc b/tests/bc/scripts/subtract_08500.bc
new file mode 100644
index 000000000000..5e6e8ac95d34
--- /dev/null
+++ b/tests/bc/scripts/subtract_08500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8401; i <= 8500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_08600.bc b/tests/bc/scripts/subtract_08600.bc
new file mode 100644
index 000000000000..f56db3c36a3b
--- /dev/null
+++ b/tests/bc/scripts/subtract_08600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8501; i <= 8600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_08700.bc b/tests/bc/scripts/subtract_08700.bc
new file mode 100644
index 000000000000..3d5d9b94598b
--- /dev/null
+++ b/tests/bc/scripts/subtract_08700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8601; i <= 8700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_08800.bc b/tests/bc/scripts/subtract_08800.bc
new file mode 100644
index 000000000000..87a5449472da
--- /dev/null
+++ b/tests/bc/scripts/subtract_08800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8701; i <= 8800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_08900.bc b/tests/bc/scripts/subtract_08900.bc
new file mode 100644
index 000000000000..2ac715811882
--- /dev/null
+++ b/tests/bc/scripts/subtract_08900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8801; i <= 8900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_09000.bc b/tests/bc/scripts/subtract_09000.bc
new file mode 100644
index 000000000000..7c39d922b736
--- /dev/null
+++ b/tests/bc/scripts/subtract_09000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 8901; i <= 9000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_09100.bc b/tests/bc/scripts/subtract_09100.bc
new file mode 100644
index 000000000000..5b8c99cf0312
--- /dev/null
+++ b/tests/bc/scripts/subtract_09100.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9001; i <= 9100; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_09200.bc b/tests/bc/scripts/subtract_09200.bc
new file mode 100644
index 000000000000..173f64d70786
--- /dev/null
+++ b/tests/bc/scripts/subtract_09200.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9101; i <= 9200; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_09300.bc b/tests/bc/scripts/subtract_09300.bc
new file mode 100644
index 000000000000..6226e6fecb1f
--- /dev/null
+++ b/tests/bc/scripts/subtract_09300.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9201; i <= 9300; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_09400.bc b/tests/bc/scripts/subtract_09400.bc
new file mode 100644
index 000000000000..0e76fa04f14f
--- /dev/null
+++ b/tests/bc/scripts/subtract_09400.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9301; i <= 9400; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_09500.bc b/tests/bc/scripts/subtract_09500.bc
new file mode 100644
index 000000000000..b5336018e368
--- /dev/null
+++ b/tests/bc/scripts/subtract_09500.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9401; i <= 9500; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_09600.bc b/tests/bc/scripts/subtract_09600.bc
new file mode 100644
index 000000000000..479bfe29e361
--- /dev/null
+++ b/tests/bc/scripts/subtract_09600.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9501; i <= 9600; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_09700.bc b/tests/bc/scripts/subtract_09700.bc
new file mode 100644
index 000000000000..14c5df67605e
--- /dev/null
+++ b/tests/bc/scripts/subtract_09700.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9601; i <= 9700; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_09800.bc b/tests/bc/scripts/subtract_09800.bc
new file mode 100644
index 000000000000..5d62bae24a40
--- /dev/null
+++ b/tests/bc/scripts/subtract_09800.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9701; i <= 9800; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_09900.bc b/tests/bc/scripts/subtract_09900.bc
new file mode 100644
index 000000000000..d2926980b543
--- /dev/null
+++ b/tests/bc/scripts/subtract_09900.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9801; i <= 9900; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}
diff --git a/tests/bc/scripts/subtract_10000.bc b/tests/bc/scripts/subtract_10000.bc
new file mode 100644
index 000000000000..32cafefd324f
--- /dev/null
+++ b/tests/bc/scripts/subtract_10000.bc
@@ -0,0 +1,17 @@
+#! /usr/bin/bc -lq
+
+scale = 20
+x = 1234567890 / scale
+len = length(x) + 1 + scale
+len *= 2
+
+for (i = 0; i <= len; ++i) {
+ a[i] = x * (10^i)
+ a[i]
+}
+
+for (i = 9901; i <= 10000; ++i) {
+ for (j = 0; j < len; ++j) {
+ a[i] - a[j]
+ }
+}